赞
踩
为了解决mysql的安全漏洞,选择将mysql从5.3.7升级到8.0.30
还是写上5.7.37的安装步骤:centos7安装mysql5.7.37详细步骤_lanren312的博客-CSDN博客
参考博客: linux中安装卸载升级mysql版本步骤(由8.0.27升8.0.29)_Lightllll的博客-CSDN博客_linux mysql 升级安装
- mkdir /lanren312/mysqlback
- mysqldump -u root -p --all-databases > /lanren312/mysqlbackup/mysqlbackup_20220919.sql
- 输入mysql密码
-
- ## 备份某一个库
- mysqldump -u root -p dev_heroes > /lanren312/mysqlbackup/dev_heroes.sql
-
- ## 导入某一个库
- mysql -u root -p prod_heroes < /lanren312/mysqlbackup/dev_heroes.sql
- ps:好像是没有显示,千万不要手贱乱按其他键(本人没试过,猜测),如果文件很大,多等会就行了
下载地址: MySQL :: Download MySQL Community Server
tar -xvf mysql-8.0.30-1.el7.x86_64.rpm-bundle.tar
- systemctl stop mysqld 停止mysql服务
- rpm -qa|grep mysql 查看以前是否装有mysql
-
- rpm:管理套件 -e:删除指定的套件 --nodeps:不验证套件档的相互关联性
- rpm -e --nodeps mysql-community-libs-5.7.37-1.el7.x86_64
- rpm -e --nodeps mysql-community-server-5.7.37-1.el7.x86_64
- rpm -e --nodeps mysql-community-libs-compat-5.7.37-1.el7.x86_64
- rpm -e --nodeps mysql-community-client-5.7.37-1.el7.x86_64
- rpm -e --nodeps mysql-community-common-5.7.37-1.el7.x86_64
-
- find / -name mysql
- rm -rf /var/lib/mysql 删除老版本mysql的所有文件和库
- rm -rf /etc/my.cnf 手动删除my.cnf
- rpm -qa|grep -i mysql 查看状态
- rpm -hiv mysql-community-common-8.0.30-1.el7.x86_64.rpm
- rpm -hiv mysql-community-client-plugins-8.0.30-1.el7.x86_64.rpm
- rpm -hiv mysql-community-libs-8.0.30-1.el7.x86_64.rpm
- rpm -hiv mysql-community-client-8.0.30-1.el7.x86_64.rpm
- rpm -hiv mysql-community-icu-data-files-8.0.30-1.el7.x86_64.rpm
- rpm -hiv mysql-community-server-8.0.30-1.el7.x86_64.rpm
1.安装8.0.32版本时有两个报错,解决参考:
rpm -ivh mysql-community-server-8.0.32-1.el7.x86_64.rpm --force --nodeps
https://blog.csdn.net/qq_51929833/article/details/122966804
2.安装mysql-community-server-8.0.32-1.el7.x86_64.rpm报错,运行 yum install -y perl
- error: Failed dependencies:
- /usr/bin/perl is needed by mysql-community-server-8.0.32-1.el7.x86_64
- libaio.so.1()(64bit) is needed by mysql-community-server-8.0.32-1.el7.x86_64
- libaio.so.1(LIBAIO_0.1)(64bit) is needed by mysql-community-server-8.0.32-1.el7.x86_64
- libaio.so.1(LIBAIO_0.4)(64bit) is needed by mysql-community-server-8.0.32-1.el7.x86_64
- perl(Getopt::Long) is needed by mysql-community-server-8.0.32-1.el7.x86_64
- perl(strict) is needed by mysql-community-server-8.0.32-1.el7.x86_64
3.安装mysql-libs报错
yum remove mysql-libs
裸机安装8.0.32记录,安装执行命令
- yum install -y net-tools
- yum update
- yum install libcrypto*
-
- yum install -y net-tools
- yum install -y libaio
- yum install -y perl
- # 设置导入sql时文件大小限制 否则有些表导入不进去
- innodb_log_file_size=1024M
- innodb_strict_mode=0
- # 设置大小写不敏感
- lower-case-table-names=1 ## 这个没生效
- 启动MySQL服务
- systemctl start mysqld
-
- 查看MySQL的进程并设置服务器开机启动mysql
- systemctl status mysqld
- systemctl enable mysqld
-
- 查看初始化密码
- cat /var/log/mysqld.log | grep password
-
- mysql -uroot -p 初始密码
- ALTER USER 'root'@'localhost' IDENTIFIED WITH MYSQL_NATIVE_PASSWORD BY '******';
-
- 备注: 5.7的修改是这样的..
- ALTER USER USER() IDENTIFIED BY 'xxxxxxx';
-
- use mysql;
- update user set host = '%' where user ='root';
- flush privileges;
-
- ps: 用mysql连接工具就可以正常连接了。

8.0.32版本修改密码时提示:密码不符合当前策略要求
- mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH MYSQL_NATIVE_PASSWORD BY 'xxxxx';
- ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
-
- mysql> SHOW VARIABLES LIKE 'validate_password%';
- ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
-
- mysql> set global validate_password.policy=LOW;
- ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
but这不就陷入了死循环,于是将密码先修改成复杂一点的(这个密码可要做好备份哟,别退出了就进不来了),再修改安全等级和密码规则:
- set global validate_password.policy=0;
- set global validate_password.length=1;
validate_password_policy 的取值:
0/LOW:只验证长度;
1/MEDIUM:验证长度、数字、大小写、特殊字符;
2/STRONG:验证长度、数字、大小写、特殊字符、字典文件;
- source /lanren312/mysqlbackup/mysqlbackup_20220919.sql;
-
- ps: 会看到数据快速导入,如果数据较大,需要一点时间..
- windows也适用这个命令
写道最后,mysql现已升级到8.0.33
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。