欢迎光临
我们一直在努力

Linux下mysql忘记管理员密码的解决方法

当你的mysql管理员密码忘记了,怎么办?

来看看下面

在开启mysql服务的适时候,使用–skip-grant-tables 参数跳过权限检查启动mysql

[root@potato Desktop]# mysqld_safe –skip-grant-tables

161209 00:01:29 mysqld_safe Logging to ‘/data/mysql/mytest_3306/data/error.log’.

161209 00:01:29 mysqld_safe Starting mysqld daemon with databases from /data/mysql/mytest_3306/data

直接mysql就可以登陆(ps:登陆进去就拥有管理员权限)

[root@potato Desktop]# mysql

Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 1

Server version: 5.6.34-log Source distribution

Copyright (c) 2000, 2016, 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.

开始改密码,不过这里有个地方要注意

若是直接用set的方式改密码,会报错,因为使用了–skip-grant-table,所以没办法用

root@localhost:mysql.sock  00:02:17 [(none)]>SET PASSWORD FOR ‘root’@’localhost’ = PASSWORD(‘root’);

ERROR 1290 (HY000): The MySQL server is running with the –skip-grant-tables option so it cannot execute this statement

所以只能直接改mysql.user权限表了

root@localhost:mysql.sock  00:05:52 [(none)]>use mysql

Database changed

root@localhost:mysql.sock  00:06:10 [mysql]> UPDATE user SET password = password (‘root’) where user = ‘root’;

Query OK, 0 rows affected (0.05 sec)

Rows matched: 1  Changed: 0  Warnings: 0

修改完毕便关闭服务

root@localhost:mysql.sock  00:06:16 [mysql]>quit

Bye

[root@potato Desktop]# mysqladmin shutdown

然后正常启动mysql服务,再用修改后的密码登陆

[root@potato Desktop]# mysqld_safe

[root@potato Desktop]# mysql -uroot -proot

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 1

Server version: 5.6.34-log Source distribution

Copyright (c) 2000, 2016, 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.

root@localhost:mysql.sock  00:08:32 [(none)]>

看,已经成功登陆进去了

ps:mysql管理员忘记密码后,是不是再也不用担心了???

赞(0)
【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。