允許遠程訪問數據庫

在實際工作中項目在本地跑着,但是幾個人開發想要建立一個共有的數據庫,此時就需要數據庫設置爲外網可以訪問,設置方法如下:

mysql -u root -p
進入數據庫中,然後執行命令:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '你的密碼' WITH GRANT OPTION;

執行過後要刷新數據庫權限,命令:

FLUSH PRIVILEGES;

此時就可以直接遠程訪問數據庫了

分析:

$ telnet  47.93.24.225 3306
telnet: connect to address 47.93.24.225: Operation timed out

telnet不通,說明是  防火牆,攔截掉了3306端口的公網訪問。
netstat -nutlp
查看3306端口是否已經啓動
iptables -L -n
iptables -L -n
發現3306端口是drop掉了
所以是服務器防火牆攔截了連接
其實一開始就應該想到
ssh連的是22端口
mysql連的是3306端口
所以是服務器拒絕了我

那麼就有兩種辦法解決這個問題

第一種就是最上面的解決辦法
第二種
工具就是先用ssh連到服務器上,然後 直接本地localhost連接數據庫。

工具地址

http://xclient.info/s/navicat-premium.html?_=28224c24c5d048ba73bf06b15e2a6668
第三種是設置防火牆把3306打開 不過不推薦,不安全
發佈了43 篇原創文章 · 獲贊 9 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章