1)配置文件 MySQL ,实现免密码登录
vim /etc/my.cnf
在行:pid-file=/var/run/mysqld/mysqld.pid,添加 如下
skip-grant-tables
保存,重启
service mysqld restart
2)免密码登录
mysql -u root -p
按回车后进入登录完成
3)选择 mysql 数据库
输入 use mysql;
4)将默认的 root 密码置空
update user set authentication_string='' where user='root';
5)退出 mysql
输入quit
mysql> quit
6)删除 /etc/my.cnf 文件最后的 skip-grant-tables并重启
vim /etc/my.cnf
dd skip-grant-tables 保存
service mysqld restart
7)重新登录到MySQL
mysql -u root -p
按回车直接进入
8)使用 ALTER 修改 root 用户密码
mysql> ALTER user 'root'@'localhost' IDENTIFIED BY 'qQ1i2px@';
qQ1i2px@为密码;
成功后提示Query OK, 0 rows affected (0.12 sec),之后可以使用此密码登录,搞定!
ps:密码要复杂才能设置成功,否则不成功,最好设置成大写字母、数字、符号的组合。提示不成功时如下
mysql> ALTER user 'root'@'localhost' IDENTIFIED BY 'admin123';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
mysql> ALTER user 'root'@'localhost' IDENTIFIED BY 'admin123@';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
mysql> ALTER user 'root'@'localhost' IDENTIFIED BY 'Admin123';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
mysql> ALTER user 'root'@'localhost' IDENTIFIED BY 'admin190';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
mysql> ALTER user 'root'@'localhost' IDENTIFIED BY 'Xpf123@';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
9)这个版本的密码默认设置最少一个大小写字母,一个数字,一个特殊字符,密码长度最少是8.
validate_password_policy 这个参数用于控制validate_password的验证策略 0-->low 1-->MEDIUM 2-->strong。
validate_password_length密码长度的最小值(这个值最小要是4)。
validate_password_number_count 密码中数字的最小个数。
validate_password_mixed_case_count大小写的最小个数。
validate_password_special_char_count 特殊字符的最小个数。
validate_password_dictionary_file 字典文件
解除限制:
1.查看当前安全变量值
mysql> SHOW VARIABLES LIKE 'validate_password%';
2.修改变量
注意到8.0 比5.7多了带“.”的变量导致只设置一半是不够的,
set global validate_password.policy=0;
set global validate_password.length=4;
然后退出后再执行mysql_secure_installation,或在数据库中使用密码重置命令就可以了
mysql_secure_installation