1. 程式人生 > >mac下找回mysql root密碼與啟動關閉快捷命令設定

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

簡單配置Mysql,可在命令列中輸入mysqlstart啟動服務,

1.開啟.bash_profile檔案,如果沒有請先建立 
建立命令:touch .bash_profile 
開啟命令:open .bash_profile 
2.在檔案最後輸入以下資訊並儲存: 
alias mysqlstart=’sudo /usr/local/mysql/support-files/mysql.server start’ 
alias mysqlstop=’sudo /usr/local/mysql/support-files/mysql.server stop’ 
3.讀取資訊: 
source .bash_profile 
4.MySql啟動:mysqlstart 
MySql停止:mysqlstop 
注意:如果提示輸入密碼,請輸入MAC管理員密碼 

5.重新整理許可權,使配置生效

flush privileges;

最後再啟動 MySQL

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

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

修改完之後記得重新整理許可權 和重新啟動mysql服務才行。