原因: 链接数据库忘记用户密码, 配置文件/etc/my.cnf中增加skip-grant-table 跳过密码登录,进入服务器修改密码时,出现如下报错信息:
mysql> alter user root@'localhost' identified by '123'; ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
解决方法:
1、重启数据库服务器
]# service mysql restart
2、链接数据库服务器
]# mysql
mysql> flush privileges; 刷新权限列表
mysql> alter user root@'localhost' identified by '123'; 更改用户密码
mysql> flush privileges; Query OK, 0 rows affected (0.01 sec) mysql> alter user root@'localhost' identified by '123'; Query OK, 0 rows affected (0.00 sec)
3、退出数据库服务器,注释配置文件 #skip-grant-table, 重启数据库服务器器
4、验证用户是否登录
[root@master-2 mysql]# mysql -uroot -p123 mysql: [Warning] Using a password on the command line interface can be insecure. Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 8 Server version: 8.0.31 MySQL Community Server - GPL Copyright (c) 2000, 2022, Oracle and/or its affiliates. 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> exit