CentOS 安装 MySQL5.7
记录一下在 CentOS7 中安装 MySQL5.7 版本遇到的一个小问题,顺便记录下安装过程
安装 MySQL5.7 的安装源
yum localinstall http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm
安装 MySQL5.7
yum install mysql-community-server
启动并设置开机自启
systemctl start mysqld
systemctl enable mysqld
查看 root 密码
grep 'temporary password' /var/log/mysqld.log
可以看到我这边的密码为::/XaahH&%5Qe,是的,包含开始的冒号,我一开始以为冒号后边才是,试了几次发现不对,冒号也是!!!
注意这个密码只能够让你登录到 MySQL,登录进去之后必须马上修改密码,否则无法进行其他任何的操作。
修改 root 密码(本篇重点)
修改密码的命令:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password';
我希望给 root 设置一个简单的密码,比如 123456,但是发现并不可以
意思是说我的密码太过简单不符合他的密码策略,但是我想查询或者修改密码策略必须先设置密码才可以,无奈之下,先设置一个复杂的:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'OracleOAEC$2019';
密码设置好了,接下来看下密码策略:
SHOW VARIABLES LIKE 'validate_password%';
这里挑了几个说明下:
我想设置的密码是简单密码 123456,需要将 validate_password_policy 设置为 LOW,设置为 LOW 之后就只验证长度,同时还需要设置 validate_password_length 为 6:
set global validate_password_policy=LOW;
set global validate_password_length=6;
然后再尝试修改密码为 123456:
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
可以发现,密码已经成功修改为 123456
允许 root 远程登录
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY '123456' WITH GRANT OPTION;
FLUSH PRIVILEGES;
本作品采用 知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议 (CC BY-NC-ND 4.0) 进行许可。