mysql 重建帳號

mysql 因某些原因帳戶被破壞。需要重建
一、模擬刪除破壞用戶:
lixiaomeng:~ # mysql -uroot -proot
mysql> use mysql;
mysql> select user,host from user;
+----------+------------+
| user     | host       |
+----------+------------+
| lixiaomeng| %          |
| lixiaomeng| 127.0.0.1  |
| root     | 127.0.0.1  |
| root     | ::1        |
| root     | lixiaomeng |
| lixiaomeng | localhost  |
| root     | localhost  |
| lixiaomeng | lixiaomeng  |
+----------+------------+
8 rows in set (0.00 sec)
mysql> delete from user where user='root';
Query OK, 4 rows affected (0.00 sec)
mysql> select user,host from user;
+----------+-----------+
| user     | host      |
+----------+-----------+
| lixiaomeng | %         |
| lixiaomeng | 127.0.0.1 |
| lixiaomeng | localhost |
| lixiaomeng | lixiaomeng |
+----------+-----------+
4 rows in set (0.00 sec)
mysql>
lixiaomeng:~ # service mysql restart
Shutting down MySQL..                                                                                                                                                 done
Starting MySQL.                                                                                                                                                       done
lixiaomeng:~ # mysql -uroot -proot
Warning: Using a password on the command line interface can be insecure.
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
lixiaomeng:~ #
 
二、重建本地用戶:
lixiaomeng:/etc # vi my.cnf 
[mysqld]
skip-grant-tables
lixiaomeng:~ # service mysql restart
Shutting down MySQL..                                                                                                                                                 done
Starting MySQL.                    
lixiaomeng:~ # mysql -uroot -p
Enter password: 
mysql> insert into mysql.user (host, user, password,ssl_cipher,x509_issuer,x509_subject) values ('localhost', 'root', password('root'),'','','');
Query OK, 1 row affected (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
mysql> grant all privileges on *.* to 'root'@'localhost' identified by 'root' with grant option;
Query OK, 0 rows affected (0.00 sec)
mysql>
lixiaomeng:/etc # vi my.cnf 
[mysqld]
#skip-grant-tables
lixiaomeng:~ # service mysql restart
Shutting down MySQL..                                                                                                                                                 done
Starting MySQL.                                                                                                                                                       done
三、通過本地用戶重建遠程用戶:
lixiaomeng:~ # mysql -uroot -proot
mysql> select user,host from mysql.user;
+----------+-----------+
| user     | host      |
+----------+-----------+
| lixiaomeng | %         |
| lixiaomeng | 127.0.0.1 |
| lixiaomeng | localhost |
| root     | localhost |
| lixiaomeng | lixiaomeng |
+----------+-----------+
5 rows in set (0.00 sec)
mysql>  grant all privileges on *.* to 'root'@'%' identified by 'root' with grant option;
Query OK, 0 rows affected (0.00 sec)
mysql> select user,host from mysql.user;
+----------+-----------+
| user     | host      |
+----------+-----------+
| lixiaomeng | %         |
| root     | %         |
| lixiaomeng | 127.0.0.1 |
| lixiaomeng | localhost |
| root     | localhost |
| lixiaomeng| lixiaomeng|
+----------+-----------+
6 rows in set (0.00 sec)
 

發佈了170 篇原創文章 · 獲贊 75 · 訪問量 63萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章