The MySQL server is running with the --skip-grant-tables option so it cannot execute this state

当忘记MySQL数据库的用户密码时,可以通过在配置文件中添加skip-grant-tables选项跳过权限检查登录,然后重启服务,修改root用户的密码,并刷新权限。之后需要取消该选项并再次重启服务以确保安全。最后验证新密码是否生效。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原因: 链接数据库忘记用户密码, 配置文件/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

     

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值