系统环境CentOS 6.x+Mysql5.7
1.修改my.cnf
在[mysqld]段添加配置skip-grant-tables
2.重启mysql
# /etc/init.d/mysqld restart
Stopping mysqld: [ OK ]
Starting mysqld: [ OK ]
3.登录mysql
# mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.13 MySQL Community Server - GPL
Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
4.修改密码
注意mysql5.7使用下面的语句修改密码
mysql> alter user 'root'@'localhost' identified by '123456';
ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
此报错通过度娘查询,需要运行下列语句后再修改密码
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
此报错说明密码不符合安全策略,默认的密码强度至少满足:大/小写字母+阿拉伯数字+特殊字符,长度不小于8位
mysql> alter user 'root'@'localhost' identified by '123456';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
5.再次修改密码生效
mysql> alter user 'root'@'localhost' identified by '123@Qwe.com';
Query OK, 0 rows affected (0.08 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)