MySQL 可以用localhost 連線,但不能用IP連線的問題,區域網192.168.*.* 無法連線mysql
Mysql 預設是沒有開啟這個許可權的(只允許使用 host:localhost,或者 host:127.0.0.1),如果想用 host:192.168.1.* ,來訪問mysql ,需要手動開啟這個許可權進入Mysql終端輸入這個命令
1.開啟cmd視窗,進入MySql安裝的bin目錄
2.執行命令登入資料庫,之後會出現一行要你輸入密碼的
mysql -u root -p
3.執行以下命令分配新使用者:
grant all privileges on *.* to '使用者名稱'@'IP地址' identified by '密碼';
4.執行完上述命令後用下面的命令重新整理許可權
flush privileges;
5.之後關閉mysql服務,然後啟動mysql服務,大功告成
===================================================================================
這是一種快速配置方法:
帳號不允許從遠端登陸,只能在localhost。這個時候只要在localhost的那臺電腦,登入mysql後,更改 "mysql" 資料庫裡的 "user" 表裡的 "host" 項,從"localhost"改稱"%" 或新增一個使用者為“%” 。
想讓區域網中的所有機器都能連線MySQL資料庫
grant all privileges on *.* to [email protected]"%" identified by 'abc' with grant option; flush privileges;
其中上面兩行程式碼的意思是給從任意ip地址連線的使用者名稱為root,密碼為abc的使用者賦予所有的許可權。其中的"%"為任意的ip地址,如果想設為特定的值也可以設定為特定的值(以萬用字元%的內容增加主機/IP地址,也可以直接增加IP地址)。
做完這些之後,區域網內的mysql伺服器可以訪問了。