Macos下重置MySQL密碼
阿新 • • 發佈:2020-11-30
環境資訊
Macos Catalina 10.15.7 (19H2)
MySQL 8.0.22
問題
忽然一段時間忘記了MySQL資料庫的密碼,登入不上去了。該如何辦呢?
預想中的路徑
- mysqld_safe --skip-grant-tables 設定密碼不生效
- mysql -u root 直接登入
- 重置密碼之類的動作
結果發現,mysqld_safe無法啟動成功,一直被拒絕啟動
實際重置路徑
- brew uninstall mysql 解除安裝mysql
- brew install mysql 重新安裝
- 單獨開一個控制檯,啟動mysql_safe
mysqld_safe --skip-grant-tables
或者直接在後臺啟動:
mysqld_safe --skip-grant-tables &
4. 單獨啟動一個控制檯,修改密碼
mysql -u root
use mysql;
ALTER USER 'root'@'localhost' IDENTIFIED WITH caching_sha2_password BY 'your password';
flush privileges;
記得重新整理一下privleges,方可立即生效。
5. 重新登入即可。
加速brew方法
如果brew更新速度慢的話,可以考慮切換至國內的映象,具體操作如下:
cd "$(brew --repo)" git remote set-url origin https://mirrors.aliyun.com/homebrew/brew.git cd "$(brew --repo)/Library/Taps/homebrew/homebrew-core" git remote set-url origin https://mirrors.aliyun.com/homebrew/homebrew-core.git echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.aliyun.com/homebrew/homebrew-bottles' >> ~/.bash_profile source ~/.bash_profile
前兩條指令是切換映象源到aliyun上。最後一條指令是寫入profile檔案,啟動之後自動執行。
Sequel Pro連線問題
注意: 之前在設定密碼時,使用了caching_sha_password的加密函式,但是sequel pro目前的版本是2016年,估計不支援此類加密方法。
那就單獨為sequel pro增加一個使用者好了。
mysq -u root -p use mysql; CREATE USER 'test'@'localhost' IDENTIFIED WITH mysql_native_password BY 'test1234'; grant all privileges on *.* to test@'localhost';
這裡的邏輯是單獨為sequel pro增加了一個可用的mysql賬戶。