linux系统升级Mysql数据库8.0.17到8.0.22(笨⽅法)完整教程
前⾔:
今天处理漏洞,好多都是关于Mysql数据库的,解决⽅法都是打补丁,⼀个补丁⼀个补丁打起来⽐较⿇烦且下载补丁也⽐较⿇烦。
后来我发现所有的漏洞的⼀个特点,只要把数据库升级到8.0.22及以上版本就可以全部解决掉。[来⾃于博主的暗⾃⾼兴]
后来博主查阅了官⽹及好多资料,发现好多原地升级的教程、但都是模模糊糊,于是博主决定采⽤最笨的办法,那就是:把⽬前版本的数据库删除掉,然后再装8.22版本的数据库。[来⾃于博主的⽆奈]
由于处理漏洞⽐较匆忙,没有留下截图只要⽂字。[来⾃于博主的抱歉]
⼀、备份原来的数据库
⼀定⼀定⼀定要备份原来的数据库。
⼀定⼀定⼀定要备份原来的数据库。
⼀定⼀定⼀定要备份原来的数据库。
(重要的事情说三遍)
⼆、删除原来的数据库
1、检查系统版本以及位数:
检查版本命令:cat /etc/system-release
检查位数命令:uname -a
2、检查是否安装了 mysql
rpm检查命令:rpm -qa mysql*
yum检查命令:yum list mysql*
3、删除旧数据版本
(已安装需要卸载⼲净)在linux中下载mysql时冲突是什么
yum卸载命令:yum remove mysql*(选择Y)
rpm卸载命令:rpm -e mysql*(如果报错则删除⼲净)
4、检查是否存在mariadb数据库
命令:rpm -qa | grep mariadb
(如果存在⼀定要卸载掉,否则可能与 mysql 产⽣冲突。)
卸载命令:
rpm -e --nodeps mariadb-5.5.52-1.el7.x86_64
rpm -e --nodeps mariadb-server-5.5.52-1.el7.x86_64
rpm -e --nodeps mariadb-libs-5.5.52-1.el7.x86_64
5、到以前的数据库以及⽇志
数据库⼀般位置:在/var/lib/⽬录下的mysql⽂档。
⽇志的⼀般位置:在/var/log/⽬录下的mysql.log⽂档。
博主这⾥建议进⾏备份⼀下再删除。
三、安装新数据库
1、下载数据库安装包8.0.22版本
2、上传数据库安装包
根据⾃⼰服务器的实际情况上传安装包,博主这⾥上传到/home/admin/mysql⽬录下3、解压安装包
命令:tar -xvf 安装包名称
(会得到rpm包)
4、使⽤rpm⽅式安装
命令:rpm -ivh ⽂件名
5、查询默认密码
命令:cat /var/log/mysqld.log | grep password
6、查看状态并启动数据库
查看命令:systemctl status mysqld
启动命令:systemctl start mysqld
7、登录数据库
命令:mysql -u root -p
(密码是上⾯查询的默认初始化密码)
8、修改配置
mysql> set global validate_password.policy=0;
mysql> set global validate_password.length=1;
mysql> alter user 'root'@'localhost' identified by '123456';
Query OK, 0 rows affected (0.01 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
mysql> quit
9、选择数据库
命令:use mysql
10、查看⽤户可⽤ip
命令:select user,host,authentication_string,plugin from user;
11、更改root⽤户host权限,数据库刚安装默认是只允许localhost本地连接sql :
命令:update user set host = ‘%’ where user =‘root’;
12、 刷新:
命令:flush privileges;
13、执⾏sql 修改远程访问,以及密码
mysql>ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY  '1234@';
14、修改group by 查询限制问题
① 查询group by 权限配置
命令:select @@global.sql_mode;
②修改配置⽂件
命令:
set@@global.sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTIT UTION';
备注:
由于处理漏洞时间较紧,所以没有截图,只要⽂字;⽽且⽅法⽐较笨,但是⽐较通俗易懂;有需要的⼩伙伴可以参考。
结束语
记录⽣活,分享知识!
本⼈还在不断学习中,如有问题可留⾔交流学习!