首頁  >  文章  >  資料庫  >  navicat報錯10038

navicat報錯10038

angryTom
angryTom原創
2019-08-07 13:08:105068瀏覽

  對Navicat的新建資料庫進行設定後,在點連接測試的時候總是提示10038錯誤,一直進不去資料庫,自己在伺服器中上傳一個PHP連接資料庫的文件,測試,伺服器內部可以正常存取mysql,用了win的cmd  dos窗口測試,不能用外網訪問mysql,也就是伺服器內網能正常訪問,外網就不行了,下面為大家介紹一下具體的解決辦法。

推薦教學:MySQL資料庫入門影片教學

#設定mysql服務允許外網訪問,修改mysql的設定文件,有的是my.ini,有的是my.cnflinux】.

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;

  查詢host值:

#  

mysql> select user,host from user;

如果沒有"%"這個host值,就執行下面這兩句話:

  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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn