忘記MySQL管理員口令怎么辦?
如果忘記了MySQL帳號的登錄密碼,MySQL提供了兩種非常規(guī)的方式重置密碼。
第一種,啟動MySQL服務時附加參數(shù)(--init-file),使用執(zhí)行含有重置密碼的腳本,達到修改帳戶密碼的目的。
第二種,啟動MySQL時附加特殊的參數(shù),使MySQL啟動時跳過權限檢測,然后登錄MySQL修改賬戶的密碼,最后以正常的方式啟動MySQL。
實際使用過第二種方法,詳細介紹一下第二種方法。
第一步,附加特殊參數(shù)啟動MySQL,windows上命令如下:
mysqld --skip-grant-tables --skip-networking&
--skip-grant-tables
的作用是使MySQL繞過權限檢測啟動。以這種方式啟動MySQL,任何人都可以無密碼連接到MySQL。這是不允許的。--skip-networking
的作用就是使MySQL服務不監(jiān)聽來自TCP/IP的請求,即通過網(wǎng)絡無法連接到該MySQL服務。
在linux上命令如下:
mysqld_safe --skip-grant-tables --skip-networking&
第二步,不使用帳號密碼登錄MySQL,修改賬戶的密碼,命令如下:
update mysql.user set password=password('123456') where user='system';
第三步,關閉MySQL服務,然后以正常的方式啟動MySQL,命令如下:
mysqladmin shutdown
mysql_safe