Centos7.9安装MySql 5.7教程

需求:centos7.9安装mysql5.7并且开放外网ip访问,配置账号密码为:root 123456

前提:把文件mysql-5.7.31-linux-glibc2.12-x86_64.tar.gz上传到了/usr/local/目录下,

下载地址:点击下载,记得先解压,再上传

要在CentOS 7.9上安装MySQL 5.7并配置外网IP访问,需要遵循以下步骤。

步骤 1: 解压 MySQL 压缩包

首先,进入/usr/local目录,并解压下载的MySQL压缩包:

cd /usr/local/
tar -zxvf mysql-5.7.31-linux-glibc2.12-x86_64.tar.gz
ln -s mysql-5.7.31-linux-glibc2.12-x86_64 mysql # 创建软链接方便后续操作

步骤 2: 创建用户和组

创建一个专门用于运行MySQL服务的用户(如果还没有的话):

groupadd mysql
useradd -r -g mysql -s /bin/false mysql

然后更改MySQL安装目录的所有权:

cd /usr/local/mysql
chown -R mysql:mysql .

步骤 3: 初始化数据库

使用以下命令初始化数据库(这将创建一个默认的数据目录):

mkdir -p /data/mysql # 如果数据目录不在默认位置,请先创建它
chown -R mysql:mysql /data/mysql
./bin/mysqld --initialize --user=mysql --datadir=/data/mysql

注意:执行初始化时会生成一个临时root密码,请务必记下来,以便后续修改密码使用。

如果这一步报错:

./bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory

则这样处理:

①. 检查是否已安装 libaio

运行以下命令检查系统中是否已经安装了 libaio

rpm -qa | grep libaio

如果没有任何输出,说明 libaio 未安装。

②. 安装 libaio

使用 yum 包管理器安装 libaio

yum install -y libaio

安装完成后,再次运行上述检查命令确认安装成功。

③. 验证动态链接库路径

有时即使安装了 libaio,系统仍然可能找不到它。可以运行以下命令验证动态链接库路径:

ldconfig -p | grep libaio

如果没有找到 libaio.so.1,可能需要更新动态链接库缓存:

ldconfig

④. 再次尝试初始化 MySQL

完成上述步骤后,重新运行 MySQL 初始化命令:

./bin/mysqld --initialize --user=mysql --datadir=/data/mysql

步骤 4: 配置 MySQL

编辑或创建配置文件/etc/my.cnf (或者 /etc/mysql/my.cnf) 来适应您的环境,确保包含如下基本配置:

[mysqld]
basedir=/usr/local/mysql
datadir=/data/mysql
port=3306
server_id=1
socket=/tmp/mysql.sock
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES 

# 开放外网访问
bind-address = 0.0.0.0

步骤 5: 设置开机启动脚本

您可以使用MySQL自带的启动脚本来设置开机自启:

cp support-files/mysql.server /etc/init.d/mysql
chkconfig --add mysql
chkconfig mysql on

步骤 6: 启动 MySQL 服务

现在尝试启动MySQL服务:

service mysql start

步骤 7: 修改 root 用户密码

使用初始化时生成的临时密码登录MySQL,并修改root用户的密码为123456

./bin/mysql -u root -p

在MySQL命令行中执行:

ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';

步骤 8: 配置远程访问

允许root用户从任何主机连接:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'yuancheng123456' WITH GRANT OPTION;
FLUSH PRIVILEGES;
然后退出quit 回车

步骤 9: 配置防火墙规则

最后,不要忘记在防火墙上打开MySQL端口(默认是3306),以允许外部访问:

firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload

完成以上步骤后,您的MySQL服务器应该已经正确安装并可以被外网访问(密码是yuancheng123456)了。请记得替换上述命令中的路径、用户名、密码等信息为您实际使用的值。

你可能感兴趣的:(mysql,数据库)