Centos7安装mysql8.0.28

1.环境

环境:

        虚拟机:vmware workstation 16 player

        使用系统:centos7

        安装软件:mysql8.0.28

 2.安装

1.在MySQL官网找到需要下载的RPM包的名称.rpm

MySQL官网:https://dev.mysql.com/downloads/repo/yum/

2.安装刚刚找到的rpm

#方法1:
#下载rpm安装包
wget https://dev.mysql.com/get/mysql84-community-release-el7-1.noarch.rpm

#安装rpm
rpm install -ivh mysql84-community-release-el7-1.noarch.rpm


#方法2
yum -y install https://repo.mysql.com//mysql80-community-release-el7-7.noarch.rpm

#选其中一个即可

3.更新yum库

yum makecache

 3.检查yum库是否安装

yum repolist enabled | grep "mysql.*-community.*"

 4.yum安装mysql

yum install -y mysql-community-server

 *** 注意【报错】:

 失败的软件包是:mysql-community-client-8.0.36-1.el7.x86_64
 GPG  密钥配置为:file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql-2022, file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

#或者

The GPG keys listed for the "MySQL 8.0 Community Server" repository are already installed but they are not correct for this package.

Check that the correct key URLs are configured for this repository.

解决方法:

#都是同一个问题:第一步的问题,获取公钥的问题(2022改成2023就好了,未来改成2024 or 2025)。
#执行:
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2023

5.开启mysql,查看mysql状态。

systemctl start mysqld    #开启MySQL
systemctl status mysqld   #查看MySQL状态

 6.查看默认密码

cat /var/mysqld.log
找到password 后面带有密码

7.登录mysql

mysql -uroot -p

 8.第一次登录需修改密码

#查看 mysql 初始的密码策略:
SHOW VARIABLES LIKE 'validate_password%';
  • validate_password.length: 密码最小长度为 8 个字符。
  • validate_password.mixed_case_count: 密码至少包含一个大写字母。
  • validate_password.number_count: 密码至少包含一个数字。
  • validate_password.special_char_count: 密码至少包含一个特殊字符
#修改密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';

1、在安装MySQL8.0时,修改临时密码,因密码过于简单(如:123456),不符合MySQL密码规范,会触发一个报错信息:

 ERROR 1819 (HY000): Your password does not satisfy the current policy requirements。

二、遇到问题

1、解决办法调整MySQL密码验证规则,修改 policy 和 length 的值。

2、MySQL 5.7 进行如下设置,即可解决问题:       

mysql>  set global validate_password_policy=0;

mysql> set global validate_password_length=1;

3、MySQL 8.0 执行代码:   

mysql>  set global validate_password_policy=0;

ERROR 1193 (HY000): Unknown system variable 'validate_password_policy'

mysql> set global validate_password_length=1;

ERROR 1193 (HY000): Unknown system variable 'validate_password_length'

三、问题解决

1、分析:可以看到,修改 policy 和 length 的值,在MySQL5.7中好使,在MySQL8.0中无效。'validate_password_policy' 变量不存在。

2、解决:先修改一个满足的密码(如:Root_12root)。

补充: validate_password_policy 有以下取值:

默认是1,即MEDIUM,所以刚开始设置的密码必须符合长度,且必须含有数字,小写或大写字母,特殊字符。

3、密码修改后,可用命令查看 validate_password 密码验证插件是否安装。

mysql> SHOW VARIABLES LIKE 'validate_password%';

4、MySQL 5.7 查看密码验证插件:

5、 MySQL 8.0 查看密码验证插件:

四、问题总结

1、通过查看 MySQL5.7 和 MySQL8.0 密码验证插件对比,可知两个版本中,变量名不一样。(*_password_policy 和 *_password.policy ) --- 问题原因所在。

2、MySQL 8.0 调整密码验证规则:

mysql> set global validate_password.policy=0;

mysql>  set global validate_password.length=1;

 9.开放远程权限

use mysql;  #选择mysql数据库
update user set host = '%' where user ='root';  #开放远程权限
flush privileges;  #刷新立即生效
systemctl restart mysqld   #重启MySQL
systemctl stop firewalld   #关闭防火墙

3.测试远程连接

远程连接工具用的是dbeaver

如果有遇到报错可以尝试修改一下驱动属性

  • 24
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值