CentOS7安装MySQL5.7.29
1、 到mysql官网下载yum repo配置文件
命令: wget https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
2、安装repo
命令: rpm -ivh mysql57-community-release-el7-9.noarch.rpm
执行完成后,/etc/yum.repos.d/目录下生成两个repo文件
mysql-community.repo mysql-community-source.repo
3、安装mysql
(1)进入到 /etc/yum.repos.d 目录后,执行命令: yum install mysql-server
(2)启动mysql ,执行命令: systemctl start mysqld 或者 serveice mysqld start (重启用restart)
(3)获取安装时的临时密码: grep 'password' /var/log/mysqld.log
若曾安装过mysql,可能无临时密码,需要删除其残留数据: rm -rf /varlib/mysql
接下来重新启动mysql : systemctl restart mysqld 或者 serveice mysqld restart
(4)用获取到的临时密码登录系统:mysql -uroot -p+临时密码
若无法登录,则修改配置,跳过密码验证步骤:vim /etc/my.cnf 在最后一行加skip-grant-tables
接下来再次重启mysql
4、登录修改密码
不出意外,会出现错误提示:ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
(1)查看mysql初始的密码策略:SHOWVARIABLES LIKE 'validate_password%';(但在跳过密码验证的情况下可能显示为空)结果如下:
- validate_password_policy:密码安全策略,默认MEDIUM策略( 0/LOW:只验证长度; 1/MEDIUM:长度、数字、大小写、特殊字符; 2/ STRONG: 长度、数字、大小写、特殊字符、字典文件)
- validate_password_dictionary_file:密码策略文件,策略为STRONG才需要
- validate_password_length:密码最少长度
- validate_password_mixed_case_count:大小写字符长度,至少1个
- validate_password_number_count :数字至少1个
- validate_password_special_char_count:特殊字符至少1个
(2)修改策略(policy为LOW, length为1)
set global validate_password_policy=0;
set global validate_password_length=1;
(3)设置新密码
update user set authentication_string=password("123456") where user="root";
alter user 'root'@'localhost' identified by 'mysql';