程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> linux中mysql數據庫外部無法訪問解決

linux中mysql數據庫外部無法訪問解決

編輯:MySQL綜合教程

linux中mysql數據庫外部無法訪問解決   今天在虛擬機CentOS系統中安裝了mysql數據庫,可是安裝成功後外部卻無法訪問。找了好長時間才找到是由於防火牆設置造成的,現將解決過程寫出來分享一下。首先,檢查了mysql的權限,已經設置過了。且服務也已經啟動,在localhost能夠成功登陸。iptables防火牆也開啟了5506端口(我安裝mysql的端口喜歡采用5506,而非默認的3306)。 www.2cto.com     然後,我在本地環境鏈接我虛擬機裡面的數據庫時怎麼也鏈接不上,提示2003的錯誤碼信息。這個是由於網絡連接不上造成的。使用SQLyog采用ssh的方式能夠連接上數據庫,這又說明網絡是通的。然後檢查用戶的權限已經設置過“%”的登陸權限了。最後,我到虛擬機裡面查看防火牆的狀態,如下: Chain RH-Firewall-1-INPUT (2 references) num target prot opt source destination  1 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0  2 ACCEPT icmp -- 0.0.0.0/0 0.0.0.0/0 icmp type 255 3 ACCEPT esp -- 0.0.0.0/0 0.0.0.0/0  4 ACCEPT ah -- 0.0.0.0/0 0.0.0.0/0  5 ACCEPT udp -- 0.0.0.0/0 224.0.0.251 udp dpt:5353 6 ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:631 7 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:631 8 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED 9 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:22 10 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited 11 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:80 12 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:5506   我就納悶了,怎麼防火牆是接受5506端口的,可就是連接不上數據庫呢。。。就在這時想到了ssh是可以連接上的。所以防火牆22的端口肯定是通的。那為什麼5506的端口就不行了。 突然發現了我設置的防火牆在   10 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited   後面,我猜想估計就是這個原因,馬上把開啟的端口設置放到了reject的上面,重啟防火牆。搞定了!   總結:設置防火牆的時候千萬要注意,不要將accept的設置放到了reject的後面,這樣就可以避免防火牆設置無效的情況發生。   友情提示:不要忘記重啟防火牆,呵呵!  

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved