在CentOS 7上安装MySQL 8.0的过程需要一些详细的步骤,包括添加官方MySQL Yum仓库、安装MySQL、进行初步的安全配置、以及验证安装。下面是这一过程的详细步骤:
准备工作
- 一台运行CentOS 7的服务器或虚拟机
- 拥有sudo权限的用户账户
步骤 1: 添加MySQL Yum仓库
-
首先,你需要从MySQL的官方网站下载MySQL Yum仓库的RPM包。打开终端或通过SSH连接到你的服务器,然后输入以下命令来下载RPM包:
sudo wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
-
接下来,安装下载的RPM包,这将添加MySQL仓库到你的系统中:
sudo rpm -Uvh mysql80-community-release-el7-3.noarch.rpm
步骤 2: 安装MySQL 8.0
-
使用Yum命令安装MySQL服务器:
sudo yum install mysql-community-server -y
-y
选项自动确认安装过程中的提示。
步骤 3: 启动MySQL服务
-
启动MySQL服务:
sudo systemctl start mysqld
-
设置MySQL服务开机自启:
sudo systemctl enable mysqld
步骤 4: 获取临时root密码
在首次安装MySQL后,系统会自动生成一个临时的root
密码。
-
使用以下命令查找这个临时密码:
sudo grep 'temporary password' /var/log/mysqld.log
记下显示的密码,你将在接下来的步骤中用到它。
步骤 5: 安全配置MySQL
-
运行安全配置脚本:
sudo mysql_secure_installation
-
系统会提示你输入临时的
root
密码,输入你之前找到的密码。 -
接下来,你可以选择设置密码策略等级、更改
root
密码、删除匿名用户、禁止root
用户远程登录、删除测试数据库,并重新加载权限表。按照提示操作即可。
步骤 6: 验证MySQL服务状态
确保MySQL服务正在运行:
sudo systemctl status mysqld
步骤 7: 登录MySQL数据库
现在,尝试使用root
账户登录MySQL数据库:
mysql -u root -p
输入你在安全配置中设置的密码。
步骤 8: 配置MySQL以允许远程连接(可选)
默认情况下,MySQL只允许本地连接。如果你需要远程连接到MySQL服务器,需要进行额外的配置。
-
登录到MySQL服务器:
sudo mysql -u root -p
-
更改
root
账户或其他用户的配置,允许从远程地址连接:ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'password'; FLUSH PRIVILEGES;
替换
'password'
为你的实际密码。出于安全考虑,建议为远程连接创建一个新的用户账户。 -
编辑MySQL配置文件(
/etc/my.cnf
或在/etc/my.cnf.d/
目录下的某个文件),注释掉bind-address
这一行:# bind-address = 127.0.0.1
-
重启MySQL服务:
sudo systemctl restart mysqld
步骤 9: 开放防火墙端口(如果需要)
如果服务器运行的是firewalld,并且你希望从外部网络连接到MySQL服务器,需要开放3306端口:
sudo firewall-cmd --permanent --zone=public --add-port=3306/tcp
sudo firewall-cmd --reload
通过完成以上步骤,你应该已经成功在CentOS 7上安装并配置了MySQL 8.0服务器,包括进行基本的安全设置和允许远程连接(如果需要)。