首页 > 数据库技术 > 详细

MySQL忘记root密码不重启mysqld的方法

时间:2018-08-01 13:01:56      阅读:145      评论:0      收藏:0      [点我收藏+]
MySQL忘记root密码不重启mysqld的方法
 
1、首先得有一个可以拥有修改权限的mysql数据库账号,当前的mysql实例账号(较低权限的账号,比如可以修改zabbix数据库)或者其他相同版本实例的账号。把 data/mysql 目录下面的user表相关的文件复制到 data/zabbix 目录下面。
 
[root@restoredb mysql]# cp mysql/user.* test/
[root@restoredb mysql]# chown mysql.mysql test/user.*
 
2、使用另一个较低权限的账号链接数据库,设置 zabbix 数据库中的 user 存储的密码数据。
 
 
[root@restoredb mysql]# mysql -uzabbix -pzabbixpasswd -A 
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 1180
Server version: 5.7.22-log 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> use zabbix;
Database changed
mysql> update user set authentication_string=password(‘zabbixpasswd‘) where user=‘root‘;
Query OK, 2 rows affected, 1 warning (0.04 sec)
Rows matched: 2 Changed: 2 Warnings: 1
 
 
3、把修改后的user.MYD和user.MYI复制到mysql目录下,记得备份之前的文件。
 
mv mysql/user.MYD mysql/user.MYD.bak
mv mysql/user.MYI mysql/user.MYI.bak
cp zabbix/user.MY* mysql/
chown mysql.mysql mysql/user.*
 
4、kill -SIGHUP 
 
[root@restoredb mysql]# pgrep -n mysql
31650
[root@restoredb mysql]#
[root@restoredb mysql]# kill -SIGHUP 31650
 
5、测试
[root@restoredb mysql]# mysql -uroot -pzabbixpasswd -A 
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 1190
Server version: 5.7.22-log 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> 

 

MySQL忘记root密码不重启mysqld的方法

原文:https://www.cnblogs.com/liang545621/p/9400206.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!