1.第一步:修改配置文件免密码登录mysql
vi /etc/my.cnf
image.jpeg
在 [mysqld]最后加上如下语句 并保持退出文件:
skip-grant-tables
重启mysql服务:
service mysqld restart
2.第二步给root用户重置密码
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
mysql> ALTER USER 'root'@'localhost' IDENTIFIED by '123456';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
mysql> ALTER USER 'root'@'localhost' IDENTIFIED by '123456';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
mysql> ALTER USER 'root'@'localhost' IDENTIFIED by 'dba$123';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
mysql>
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements解决方法:
mysql> SHOW VARIABLES LIKE 'validate_password%';
+--------------------------------------+--------+
| Variable_name | Value |
+--------------------------------------+--------+
| validate_password.check_user_name | ON |
| validate_password.dictionary_file | |
| validate_password.length | 8 |
| validate_password.mixed_case_count | 1 |
| validate_password.number_count | 1 |
| validate_password.policy | MEDIUM |
| validate_password.special_char_count | 1 |
+--------------------------------------+--------+
7 rows in set (0.52 sec)
set global validate_password.length=4;
set global validate_password.policy=0;
ALTER USER 'root'@'localhost' IDENTIFIED by 'dba$123';
3.还原my.cnf
service mysqld restart
4.开启远程访问
update user set host='%' where user='root'; flush privileges;