在內部測試服務器上新安裝了mysql,在服務器本地登錄數據庫沒問題,但是遠程不能登錄,試著用telnet命令連接mysql服務器,結果命令行給出如下提示:
telnet 192.168.41.191 3306
Trying 192.168.41.191...
Connected to 192.168.41.191.
Escape character is '^]'.
GHost '192.168.41.186' is not allowed to connect to this MySQL serverConnection closed by foreign host.
剛開始懷疑是防火牆的端口沒有打開,直接把防火牆關掉,還是不行。
然後琢磨是不是路由器對服務器的訪問設置了什麼規則。了解到路由器沒有添加任何過濾規則,問題應該不在路由器。
後來發現,mysql默認是沒有打開遠程登錄的,好尴尬,太無知了。
然後就找到了打開遠程登錄的方法。如下:
修改mysql數據庫的表user 的 host 字段的localhost 數據改為:“%”
在mysql的Console 控制台 輸入 flush privileges
Commit
做完這三步操作,再次使用遠程機器登錄mysql,已經可以連接了。