對Navicat的新建資料庫進行設定後,在點連接測試的時候總是提示10038錯誤,一直進不去資料庫,自己在伺服器中上傳一個PHP連接資料庫的文件,測試,伺服器內部可以正常存取mysql,用了win的cmd dos窗口測試,不能用外網訪問mysql,也就是伺服器內網能正常訪問,外網就不行了,下面為大家介紹一下具體的解決辦法。
推薦教學:MySQL資料庫入門影片教學
#設定mysql服務允許外網訪問,修改mysql的設定文件,有的是my.ini,有的是my.cnf【linux】.
1:設定mysql的設定檔
/etc/mysql/my.cnf
找出 bind-address =127.0.0.1
# 將其註解掉;//作用是使得不再只允許本地存取;
也可以改成bind-address =0.0.0.0
重啟mysql:/etc/init.d /mysql restart;
2:在Linux端登入mysql資料庫:mysql -u root -p
##mysql> ; use mysql;
mysql> select user,host from user;
mysql> update user set host='%' where user='root';
mysql> flush privileges;
伺服器的防火牆沒有關掉,在將防火牆關閉之後,就能正常連接了
附上防火牆的開啟/關閉方法LINUX防火牆的開啟與關閉方法
1) 重新啟動後生效 開啟: chkconfig iptables on 關閉: chkconfig iptables off 2) 即時生效,重啟後失效## 開啟: service iptables start
關閉: service iptables stop
需要說明的是對於Linux下的其它都可以用以上命令執行服務開啟和關閉操作。
在開啟了防火牆時,做如下設置,開啟相關端口,
修改/etc/sysconfig/iptables 文件,新增以下內容:
-A RH-Firewall -1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp - p tcp --dport 22 -j ACCEPT
#以上是navicat報錯10038的詳細內容。更多資訊請關注PHP中文網其他相關文章!