破解Mysql管理员账户密码
1.进入配置文件/etc/my.conf,添加skip-grant-table:
[root@server ~]# vim /etc/my.cnf
[mysqld]
basedir = /usr/local/mysql
datadir = /opt/data
socket = /tmp/mysql.sock
port = 3306
pid-file = /opt/data/mysql.pid
user = mysql
skip-name-resolve
skip-grant-tables
2.重启服务
[root@server ~]# service mysqld restart
Shutting down MySQL.... SUCCESS!
Starting MySQL.. SUCCESS!
3.更新mysql.user表,设置user=root,并且host=localhost的记录中authentication_string的密码
mysql> update mysql.user set authentication_string = password('tjp123') where User = 'root' and Host = 'localhost';
Query OK, 1 row affected, 1 warning (0.36 sec)
Rows matched: 1 Changed: 1 Warnings: 1
4.删除配置文件中的skip-grant-tables重启服务
5.重启服务
[root@server ~]# service mysqld restart
Shutting down MySQL.... SUCCESS!
Starting MySQL.. SUCCESS!
验证
[root@server ~]# mysql -uroot -ptjp123
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 2
Server version: 5.7.22 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 nam