問題:
今天在自己的阿里雲伺服器上(Window Server2012 R2)安裝了一個MySQL5.7.26,在阿里雲伺服器中通過本地連結是正常的,但是當在自己的電腦上使用Navicat連線是提示:1045 - Access denied for user 'root'@'223.74.158.192'(using password:YES) 異常,如下圖所示:
異常原因:
由上圖我們可以字面意思我們可以知道雖然使用者名稱和密碼正確,但是卻沒有在其他ip地址上訪問的許可權。需要登入MySQL然後修改ip訪問許可權。
解決方法:
使用cmd登入MySQL資料庫:
解決‘mysql’ 不是內部或者外部命令,也不是可執行的程式或者批量檔案。
出現這裡情況的原因一般情況就是沒有在環境變數中配置MySQL資料安裝環境路徑,解決方法:
找到MySQL安裝的地址複製路徑=>然後再到高階系統=>系統環境變數=>Path中新增,若下如圖所示:
複製MySQL安裝的完整路徑:
C:\Program Files\MySQL\MySQL Server 5.7\bin
配置完成確認應用即可:
在MySQL資料庫中使用root登入(輸入正確的密碼):
mysql -u root -p
設定MySQL資料庫的遠端訪問許可權:
GRANT ALL PRIVILEGES ON *.* TO '登入使用者名稱(如:root)'@'%' IDENTIFIED BY '登入密碼(如:123456)' WITH GRANT OPTION;
// 格式:GRANT 許可權 ON 資料庫名.表名 TO 使用者@登入主機 IDENTIFIED BY "使用者密碼";@ 後面是訪問MySQL的客戶端IP地址(或是 主機名) % 代表任意的客戶端,如果填寫 localhost 為本地訪問(那此使用者就不能遠端訪問該mysql資料庫了)
重新整理MySQL資料庫許可權:
FLUSH PRIVILEGES;
在Navicat中輸入剛才設定的賬號密碼連線資料庫: