Linux下MySql密碼忘了怎麼辦?

小小9575發表於2018-11-22

1.首先編輯/etc/my.cnf檔案

vim /etc/my.cnf

在檔案中加入一行配置skip-grant-tables
例如加到這個位置
# read_rnd_buffer_size = 2M 
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
skip-grant-tables
然後儲存退出
2.重啟mysql服務

service mysqld restart

這樣就可以跳過驗證直接進入mysql
3.進入mysql

mysql

4.依次執行sql語句

>use mysql;    更改資料庫
>UPDATE user SET PASSORD =password('你要設定的新密碼') WHERE USER= 'root';  重設密碼
>flush privileges;  重新整理MySQL的系統許可權相關表,以防止更改後拒絕訪問;或或者重啟MySQL伺服器
>quit;

注:
如果重設密碼報錯(ERROR 1054 (42S22): Unknown column 'PASSORD' in 'field list')
則用

>update mysql.user set authentication_string=password('你要設定的新密碼') where user='root' ;

5.再次編輯/etc/my.cnf檔案

vim /etc/my.cnf

移除skip-grant-tables配置,儲存退出
6.重啟mysql服務

service mysqld restart

至此,就可以用新的密碼登陸了!

mysql -uroot -p

 

相關文章