當你的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
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