不是每個人都會碰到MacOS安裝MySQL 報錯,但我確實都碰到了,這裡面坑也比較多,獨立解決這些問題,也是對你本身基礎知識的一次檢查,所以我更傾向於大家先獨立排查,如果還是沒解決再來看下文。
你可能會遇到這兩個頭痛的提示:
Unable to connect to host 127.0.0.1 because access was denied. Double-check your username and password and ensure that access from your current location is permitted. MySQL said: Access denied for user 'root'@'localhost' (using password: YES)
Unable to connect to host 127.0.0.1, or the request timed out. Be sure that the address is correct and that you have the necessary privileges, or try increasing the connection timeout (currently 10 seconds). MySQL said: Your password has expired. To log in you must change it using a client that supports expired passwords.
不是每個人都會碰到這個問題,但是我確實都碰到了,這裡面坑也比較多,獨立解決這些問題,也是對你本身基礎知識的一次檢查,所以我更傾向於大家先獨立排查,如果還是沒解決再來看下文。另外說一句,如果你是在laravel官方推薦的Homestead環境中的話,可能不會碰到這幾個問題。但我是一個比較愛折騰的人,特別喜歡debug,特別喜歡在命令列裡敲東西,所以也順便解決了這個問題,跟大家分享一下。
首先,我們來重現一下從安裝MySQL開始的整個過程。
1、在mysql官網下載MySQL的dmg安裝包:https://dev.mysql.com/downloads/mysql/
2、dmg檔下載好之後,雙擊安裝,注意到最後一步的時候,會彈出一個提示框:
root@localhost 後面的W:ivGGB5lrdS 這個是MySQL安裝時給你的初始密碼,這個很重要,一定要記下來。
3、啟動MySQL:
進入Mac的系統偏好設定
4.啟動MySQL之後,我選擇了Sequel pro這個軟體來操作資料庫。
這時候,就會出現之前的兩個錯誤,
其中前文提到的error1的意思是你的MySQL 帳號密碼有錯,我一開始在laravel專案的.env檔案中設定好了資料庫相關的配置,所以直接輸入的是.env檔案中的配置,然後就會提示
Unable to connect to host 127.0.0.1 because access was denied. Double-check your username and password and ensure that access from your current location is permitted. MySQL said: Access denied for user 'root'@'localhost' (using password: YES)
另外error2 的錯誤中,錯誤提示的意思是:
password has expired,其實意思是你不可以用剛才安裝好MySQL的初始密碼登錄,你需要在重置你的MySQL密碼,然後用新密碼來登入root帳戶,接下來我們來解決這個問題。
首先在命令列模式下輸入MySQL
不出意外的話,你會看到一個提示
mysql command not found
這是因為我們是透過dmg檔案包的形式安裝的MySQL,系統不知道MySQL這個東西,我們需要在bash檔案中加入MySQL路徑(我的命令列工具使用的是zsh,每個人用的不一樣,但是思路是一樣的,就是在bash檔案中加入MySQL路徑)
先開啟bash文件,然後再加入MySQL路徑。
在開啟的檔案中輸入下方這行指令,儲存後退出即可在命令列中使用MySQL指令。
export PATH=$PATH:/usr/local/mysql/bin
之後,我們需要重設MySQL root 帳號的密碼,在命令列中輸入
mysql -u root -p
然後輸入MySQL提供的那個初始密碼,如果出現如下提示,表示我們進入了MySQL的設定項目
這時,我們在 mysql >後面輸入
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('你想要设置的root账户的新密码');
當看到
就表示重設密碼成功,然後我們開啟Sequel pro輸入root帳號和新密碼時,就可以使用了。
相關推薦:
安裝完MySQL,在設定最後一步報錯errorNr.1364
以上是收藏! MacOSS透過DMG檔案安裝MySQL之後報錯的解決方案的詳細內容。更多資訊請關注PHP中文網其他相關文章!