MAC 重置MySQL root 密碼


重置MySQL root 密碼:
當忘記密碼,或者想要強行重置 MySQL 密碼的時候,可以像下面這樣:

1.停止 MySQL 服務

sudo /usr/local/mysql/support-files/mysql.server stop
//當停止失敗 見下邊 如何用mac 活動指示器停止服務。

2.進入安全模式
sudo mysqld_safe --skip-grant-tables

這個地方,如果你 alias 了 mysqlld_safe 這個命令,那么可以直接復制粘貼;如果沒有,則需要加上正確的路徑。在 Linux/OS X 系統下,默認路徑是 /usr/local/mysql/bin/mysqld/usafe。

說是安全模式,其實是超級危險模式!如果你是在本地修改,那沒問題;如果是在服務器上,那你得保證這個時候沒有任何人登錄到系統。因為一旦進入了安全模式,任何人都可以使用任何密碼通過 root 用戶登錄入到 MySQL ,可以執行任何想執行的操作。

這也是為什么,當我們密碼忘記了的時候,我們可以這樣來修改密碼。凡事有利有弊,你可以用這種方式來做好事;而同樣,可以用來做壞事。


3.新打開一個終端,進入 MySQL

mysql -u root -p

這里也和 mysqld_safe 一樣。如果你是 OS X 上新裝的 MySQL ,那么很有可能並不能直接使用 mysql 這個命令。而是要使用它的絕對路徑: /usr/local/mysql/bin/mysql -u root -p

然后輸入任意密碼就可以進入 MySQL 了。

4.修改密碼
進入了之后先不要急着使用 update 命令修改密碼,先看看表中的字段名。不同版本密碼的字段名可能不一樣。

MySQL 的用戶信息是存在 mysql.user 這個表里面的。於是可以先選擇 mysql 這個數據庫,再看數據庫中 user 表中的字段名稱。
use mysql; //切換數據庫
describe user; //查看user表的字段

然后確定密碼字段的名稱,一般可能是 Password。然而在 OS X 的 MySQL 5.7 這個版本中,密碼字段名稱是 authentication_string 。記住這個字段名。

然后修改密碼啊:UPDATE mysql.user SET authentication_string=PASSWORD(‘123456’) where User=’root’; //將root用戶密碼改成 123456


5.刷新權限,使配置生效

flush privileges;

最后再啟動 MySQL

sudo /usr/local/mysql/support-files/mysql.server start

當啟動失敗的話,可以直接用mac工具活動監視器:
搜索mysql 進程名稱列表有mysql的話,直接雙擊出現:這里寫圖片描述
點擊退出即可。

修改完之后記得刷新權限 和重新啟動mysql服務才行。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM