在CentOS上将MySQL从5.6升级到5.7
本文将详细介绍如何在CentOS上将MySQL从5.6升级到5.7,包括移除旧版本的存储库包的步骤。
1. 备份数据库
在进行升级之前,请确保已经备份了所有重要数据。可以使用mysqldump
来导出所有数据库:
mysqldump -u root -p --all-databases > all_databases_backup.sql
2. 检查当前MySQL版本
运行以下命令以检查当前的MySQL版本:
mysql --version
3. 移除MySQL 5.6的存储库包
3.1 列出已安装的MySQL存储库包
首先,列出系统中安装的MySQL存储库包:
yum list installed | grep mysql
3.2 移除MySQL 5.6的存储库包
查找到MySQL 5.6的存储库包后,使用yum remove
命令来移除它们。例如,如果MySQL 5.6的存储库包名称是mysql-community-release-el7-5.noarch
,则可以使用以下命令移除它:
sudo yum remove mysql-community-release-el7-5.noarch
3.3 验证存储库配置
移除存储库包后,验证存储库配置文件是否已被删除或禁用。通常,MySQL存储库配置文件位于/etc/yum.repos.d/
目录下。你可以查看该目录,确认是否仍有与MySQL 5.6相关的文件:
ls /etc/yum.repos.d/
如果仍然存在与MySQL 5.6相关的存储库配置文件,可以手动删除:
sudo rm /etc/yum.repos.d/mysql-community.repo
sudo rm /etc/yum.repos.d/mysql-community-source.repo
3.4 清理缓存
为确保存储库变更生效,请清理yum
缓存:
sudo yum clean all
4. 更新MySQL存储库
下载并安装MySQL 5.7的存储库包:
sudo rpm -Uvh <https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm>
5. 安装MySQL 5.7
使用yum
来安装MySQL 5.7:
sudo yum install mysql-community-server
6. 启动MySQL服务
安装完成后,启动MySQL服务:
sudo systemctl start mysqld
7. 设置MySQL
在MySQL 5.7首次启动时,默认情况下会生成一个临时root密码。可以使用以下命令来查找此密码(可能为空密码):
sudo grep 'temporary password' /var/log/mysqld.log
使用临时密码登录MySQL:
mysql -u root -p
然后更改root密码:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewStrongPassword';
8. 升级数据库表
MySQL 5.7包含一些新的特性和改进,因此需要升级现有的数据库表:
mysql_upgrade -u root -p
9. 重新启动MySQL服务
为确保所有更改生效,请重新启动MySQL服务:
sudo systemctl restart mysqld
10. 验证升级
再次检查MySQL版本以确保升级成功:
mysql --version
至此,你已经成功将MySQL从5.6升级到5.7.35。