CentOS 7安装MySQL指南
在CentOS 7上安装MySQL涉及多个步骤,包括下载官方Yum仓库、安装MySQL服务器、启动并设置MySQL服务等,以下是详细的安装步骤和相关配置:
一、准备工作与环境检查
1、更新系统软件包
sudo yum update y
2、检查系统中是否已安装MariaDB或MySQL
rpm qa | grep i mysql rpm qa | grep i mariadb
3、卸载已有的MariaDB或MySQL
如果存在MariaDB或MySQL,需要先卸载:
sudo yum remove mariadbserver mysqlserver y
二、下载并安装MySQL Yum仓库
1、下载MySQL Yum仓库包
wget https://dev.mysql.com/get/mysql57communityreleaseel710.noarch.rpm
2、安装MySQL Yum仓库包
sudo rpm ivh mysql57communityreleaseel710.noarch.rpm
三、安装MySQL服务器
1、安装MySQL服务器
sudo yum install y mysqlcommunityserver
2、启动MySQL服务
sudo systemctl start mysqld
3、查看MySQL服务状态
sudo systemctl status mysqld
四、获取临时密码并登录MySQL
1、获取临时密码
sudo grep 'temporary password' /var/log/mysqld.log
2、使用临时密码登录MySQL
mysql uroot p
3、修改root用户密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'New_password_here';
4、退出MySQL
exit;
五、配置MySQL字符集和远程访问
1、编辑MySQL配置文件
sudo vi /etc/my.cnf
2、添加以下内容以设置字符集为UTF8(如果尚未设置)
[client] defaultcharacterset=utf8 [mysqld] charactersetserver=utf8 collationserver=utf8_general_ci
3、重启MySQL服务
sudo systemctl restart mysqld
4、授权远程访问
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'your_password' WITH GRANT OPTION; FLUSH PRIVILEGES;
六、开放防火墙端口并设置开机自启动
1、开放防火墙端口3306
sudo firewallcmd zone=public addport=3306/tcp permanent sudo firewallcmd reload
2、设置MySQL开机自启动
sudo systemctl enable mysqld sudo systemctl daemonreload
七、常见问题及解决方案
1、无法连接到MySQL数据库
确保MySQL服务已启动:sudo systemctl status mysqld
确保防火墙允许3306端口:sudo firewallcmd listall
检查MySQL绑定地址是否正确:编辑/etc/my.cnf
,确保bindaddress
设置为0.0.0.0
或注释掉该行。
2、忘记MySQL root密码
停止MySQL服务:sudo systemctl stop mysqld
以安全模式启动MySQL:sudo mysqld_safe skipgranttables &
登录MySQL并修改密码:mysql u root
,然后执行FLUSH PRIVILEGES;
并修改密码。
通过以上步骤,您应该能够在CentOS 7上成功安装并配置MySQL,如果在安装过程中遇到任何问题,请参考上述常见问题及解决方案进行排查。