筆者在一個實際的項目中需要MYSQL遠程訪問.
情景: 安裝好Mysql, 本地訪問正常,很奇怪局域的機器都無法訪問該服務器上的MYSQL數據庫.
經過資料查找
原來Mysql默認是不可以通過遠程機器訪問的,通過下面的配置可以開啟遠程訪問 .
在MySQL Server端:
登陸MYSQL ..bin\ mysql -h localhost -u root -p
提示你輸入密碼,輸入密碼後進入
mysql 命令模式,
mysql> use mysql;
mysql> GRANT ALL ON *.* TO admin@'%' IDENTIFIED BY 'admin' WITH GRANT OPTION;
#這句話的意思 ,允許任何IP地址(上面的 % 就是這個意思)的電腦 用admin帳戶 和密碼(admin)來訪問這個MySQL Server
#必須加類似這樣的帳戶,才可以遠程登陸。 root帳戶是無法遠程登陸的,只可以本地登陸
在服務器上,使用IP地址和新的用戶,確實可以訪問服務器,但是遠程機器還是無法訪問到該MYSQL.
經過關閉服務器上防火牆,噢, MYSQL是可以訪問拉.但是從安全角度出發,是不允許關閉防火牆的.
解決方法:
1,控制面板 打開防火牆,在進入規則中新建一個規則.
2. 選擇端口,然後下一步
3.選擇TCP 端口,填 80,3306 端口號 按下一步
4. 選擇允許所有連接
5 下一步全選.
具體范例見http://maximumpcguides.com/windows-7/open-a-port-in-windows-7s-firewall/
至此你可以用新的用戶遠程訪問你的MYSQL數據