摘要
由于我们在做部署的时候会部署MySQL,但是版本可能各种各样,而且我们服务器会定期的进行漏洞扫描,因此我们在遇到MySQL的相关漏洞时,一般漏洞报告中会提示出解决方案,一般来时就是升级软件的版本,因此我们下面就来做怎么升级MySQL从8.0.30版本到8.0.35目前最新版本。在此,采用的是切换配置文件和数据目录的方式来升级MySQL版本,
操作步骤
1.首先确认操作系统和glibc版本
(1)查看操作系统相关信息
uname -a
从显示的信息上面可以看出,我们更新的MySQL的操作系统的是X86_64类型
(2)查看glibc版本
ldd --version
从上图中我们可以看出我们ldd的版本是2.17版本 记住上面的信息 有助于你选择MySQL的版本符合我们自己的操作系统环境。
2. 下载MySQL对应版本
下载地址:MySQL :: Download MySQL Community Server (Archived Versions)
接下来就是选择符合我们操作系统的版本了。
1. 先选择MySQL版本
2. 选择符合我们的操作系统
3. 选择具体的小版本glibc
4.下载对应的tar.xz包
下载完成就上传到服务器。
3.备份数据
通过命令将某个数据库中数据导出,作为一个备份文件。
任意位置执行如下命令:进行对某个数据库数据备份,如果找不到mysqldump文件就切换到MySQL的安装目录下的bin目录下执行。
mysqldump -u <用户名> -p <数据库名> > <备份文件名>.sql
例如:mysqldump -u root -p test > /opt/test.sql
上述命令操作就是将test中数据库的数据形成sql文件存放在/opt 目录下。
4.查看之前MySQL的版本
5.停止MySQL
service mysql stop
6.找到之前mysql的配置文件
find / -name my.cnf
查看my.cnf中配置的basedir和datadir
7.将之前的目录备份
mv /usr/local/mysql /usr/local/mysql_30bak
8.将上传到服务器上的MySQL压缩包解压
tar -xvf mysql-8.0.35-linux-glibc2.17-x86_64.tar.xz
9.移动解压后的MySQL文件到 /usr/local/下并重命名为mysql
mv mysql-8.0.35-linux-glibc2.17-x86_64 /usr/local/mysql
10.检查my.cnf的位置
find / -name my.cnf
如果这个目录在之前mysql的目录下 我们就需要复制一份到 /etc 目录下,因为之前的mysql目录已经被我们重命名为mysql_30bak,如果不复制一份到/etc 下面的话,那么重启mysql的时候就会找不到文件而报错。
cp /usr/local/mysql_30bak/my.cnf /etc
11.启动mysql
service msyql start
12.验证是成功
mysql --version
现在版本信息输出为8.0.35说明升级成功。
再测试连接数据库
mysql -uroot -p
输入密码之后正常连接,说明mysql数据库升级成功。大功告成。