本地ubuntu遠端連線雲伺服器的資料庫
環境說明:
遠端雲伺服器系統:CentOS7.4
遠端雲伺服器資料庫: MySQL 5.7
本機連線遠端資料庫三個問題:
1、網路是否通暢
2、遠端資料庫是否給本地IP授權或者拒絕遠端使用者登入
3、遠端伺服器是否開放3306埠
一般這三個問題解決了,那麼資料庫 的連線應該就沒什麼問題了
1、首先檢視網路是否通暢,本地ubuntu ping 遠端雲伺服器,檢查網路通暢
2、給遠端使用者登入授權
直接授權(推薦)
從任何主機上使用root使用者,密碼:youpassword(你的root密碼)連線到mysql伺服器:
# mysql -u root -proot
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%(授權的IP)' IDENTIFIED BY 'youpassword' WITH GRANT OPTION;
操作完後切記執行以下命令重新整理許可權
FLUSH PRIVILEGES
3、 開放3306埠
這裡centos7使用的是firewalld.service 解除安裝ta,安裝iptables.service
3.1、關閉firewall:
systemctl stop firewalld.service systemctl disable firewalld.service systemctl mask firewalld.service
3.2、安裝iptables防火牆 yum -y install iptables-services
3.3、啟動設定防火牆
# systemctl enable iptables # systemctl start iptables
3.4、檢視防火牆狀態
systemctl status iptables
3.5、編輯防火牆,增加埠
vim /etc/sysconfig/iptables
在最後加上一句 如下
-A IN_public_allow -p tcp -m tcp --dport 3306 -m conntrack --ctstate NEW -j ACCEPT
:wq! 儲存退出
3.6、重啟防火牆使配置生效
systemctl restart iptables.service #重啟防火牆使配置生效 systemctl enable iptables.service #設定防火牆開機啟動
最後使用本地navicat或者ubuntu下的python專案連線遠端資料庫都正常連線。