一、前景
由于mysql5.7.37存在漏洞,影响系统安全,所以需要将mysql版本升级到5.7的最新版本5.7.39。
二、步骤
1、下载5.7.39的安装包:
下载链接如下:
https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.39-1.el7.x86_64.rpm-bundle.tar
2、解压安装包
tar -xvf mysql-5.7.39-1.el7.x86_64.rpm-bundle.tar
3、查看上一个版本的启动命令
由于上一个版本可能不是我们自己装的,所以需要查看一下启动命令,方便执行第四步
history|grep start
我的机器上一个版本mysql的启动命令是:
/etc/init.d/mysqld start
4、停止上一个版本mysql服务
/etc/init.d/mysqld stop
注意:大家每个人启动命令不一样,所以需要换成大家自己的停止命令
5、备份配置文件
cp /etc/my.cnf /etc/my.cnf20230112
注意:大家的配置文件不一样,要换成自己配置文件的路径
6、备份数据
(1)备份mysqld文件
cp /etc/init.d/mysqld /root/mysqld20230112
注意:备份时不要备份到同一目录
(2)备份mysql的数据目录
tar -zcvf mysqldata.tar.gz /data/mysql
tar -zcvf mysqlsoftware.tar.gz /software/mysql
7、安装新版本的Mysql5.7.39
cd /data/5.7.39
rpm -Uvh *.rpm
注意:(1)大家也可以使用下面的命令安装
rpm -ivh *.rpm
(2)安装时有可能会报以下错误
首先删除下面红框的包
执行命令rpm -qa mariadb-libs查看是否安装了mariadb-libs
rpm -qa mariadb-libs
发现已经安装的mariadb-libs,所以需要卸载掉mariadb-libs,重新安装
卸载命令如下:
rpm -e mariadb-libs-5.5.52-1.el7.x86_64
发现报错,则执行下面的命令,强制卸载
rpm -e --nodeps mariadb-libs-5.5.52-1.el7.x86_64
重新执行rpm -qa mariadb-libs,看是否卸载成功
rpm -qa mariadb-libs
8、更换配置文件
检查配置文件是否与备份前内容是否一致,如一致则启动,不一致则拷贝备份文件中的配置到新生成的my.cnf
删除新生成的配置文件
使用原来的配置文件
9、删除原来mysqld文件
rm -rf /etc/init.d/mysqld
10、启动mysql文件
systemctl start mysqld
11、查看启动状态
systemctl status mysqld
现在验证一下