文章目录
记录mysql扫描漏洞,小版本升级
1. 问题出现:
- Oracle MySQL Server 信息泄露漏洞(CVE-2021-22946) - MySQL Server存在存在信息泄露漏洞,该漏洞的存在是由于 MySQL Server 中的 Server: Compiling (cURL) 组件组件存在信息泄露漏洞。攻击者可利用该漏洞未授权读取数据,影响数据的保密性。
- Oracle MySQL Server组件安全漏洞(CVE-2019-5482) - Oracle MySQL中的MySQL Server组件 5.7.28及之前版本和8.0.18及之前的版本的Compiling (cURL)子组件存在安全漏洞。
- Oracle MySQL Server 安全漏洞(CVE-2020-1967) - Oracle MySQL中的MySQL Server 5.6.48及之前版本、5.7.30及之前版本和8.0.20及之前版本的Server: Security: Encryption (OpenSSL)组件存在安全漏洞。攻击者可利用该漏洞造成拒绝服务(挂起或频繁崩溃),影响数据的可用性。
2. 问题分析:
- 这写漏洞一般都会指出升级补丁修复漏洞方法,但是mysql这些漏洞一般会在下一个版本中解决,扫描到的漏洞太多,采取直接升级的方式,mysql的小版本升级并不复杂。
3. 问题解决:
1、首先从官网下载升级的二进制版本包上传到服务器:
官网下载较慢,建议采用国内的镜像下载,下边为中科大镜像:
http://mirrors.ustc.edu.cn/mysql-ftp/Downloads/MySQL-5.7/
2、查看当前mysql的版本
mysql> select @@version;
+------------+
| @@version |
+------------+
| 5.7.26-log |
+------------+
1 row in set (0.00 sec)
计划将5.7.26版本升级为5.7.38
3、备份数据
使用mysqldump备份sql数据
mysqldump -h127.0.0.1 -u --default-character-set=gbk -p -A>/bak/bak20220714220000/***.sql
备份data数据和配置文件my.cnf(根据自己的目录进行备份)
cp -rp /usr/local/mysql/data /bak/mysql5.7.26_data_bak
cp -rp /etc/my.cnf /bak/my.cnf.bak
4、配置MySQL以通过设置 innodb_fast_shutdown 为执行慢速关闭:
mysql> select @@innodb_fast_shutdown;
+------------------------+
| @@innodb_fast_shutdown |
+------------------------+
| 1 |
+------------------------+
1 row in set (0.00 sec)
mysql> SET GLOBAL innodb_fast_shutdown=0;
5、停止 MySQL 服务:
[root@houqingshujuku bin]# ./mysqladmin -u -p shutdown
6、解压下载的二进制安装包,将刚才备份的data文件按照my.cnf中的路径拷贝一份
tar -zxvf mysql-5.7.38-linux-glibc2.12-x86_64.tar.gz
mv mysql mysql5.7.26.bak
mv mysql-5.7.32-linux-glibc2.12-x86_64 mysql
cp -rp /bak/mysql5.7.26_data_bak /usr/local/mysql/data
cp -rp /mysql5.7.26.bak/mysqld.log mysql/mysqld.log
7、使用现有的目录启动 MySQL 服务:
[root@houqingshujuku bin]# ./mysqld_safe --defaults-file=/etc/my.cnf --datadir=/usr/local/mysql/data --pid-file=/usr/local/mysql/data/houqingshujuku.pid
8、运行 mysql_upgrade:
mysql_upgrade -u root -p
9、关闭 MySQL 重新启动:
[root@houqingshujuku bin]# ./mysqladmin -u -p shutdown
[root@houqingshujuku bin]# ./mysqld_safe --defaults-file=/etc/my.cnf --datadir=/usr/local/mysql/data --pid-file=/usr/local/mysql/data/houqingshujuku.pid
10、登陆到 MySQL 查询版本:
mysql> select @@version;
+------------+
| @@version |
+------------+
| 5.7.38-log |
+------------+
1 row in set (0.00 sec)
版权归原作者 studymary 所有, 如有侵权,请联系我们删除。