mysql 遠程連接失敗原因

遠程賬號

需要添加一個用於遠程訪問的賬戶,此賬號可以是root本身,密碼可以是不同於本地的密碼。
大致檢查步驟

  • 登錄到服務器,進入mysql
  • 輸入命令查看是否有 % host 記錄 且 user 是 root
  • 命令:
use mysql;
select host,user from user;

在這裏插入圖片描述

實例安全組

騰訊雲或者阿里雲服務器的實例裏面,找到安全組,裏面的進出規則,
需要添加對應端口3306(下圖是阿里雲控制檯)
在這裏插入圖片描述

防火牆(多數情況)

大多數情況來自於防火牆。
首先看下防火牆(如下圖)

  • 我的服務器防火牆是firewall 可以看到服務已經禁用了
  • 查看狀態 ,關閉防火牆 ,關閉服務
systemctl status firewalld.service 
systemctl stop firewalld.service
systemctl mask firewalld

在這裏插入圖片描述
這樣可能還沒有完。比如iptables
關閉服務或者添加規則

service iptables stop

查看iptables狀態,如下圖
在這裏插入圖片描述
編輯如下文件修改或添加規則

vi /etc/sysconfig/iptables

在這裏插入圖片描述
重啓一下iptables

service iptables restart

在這裏有點意外,關閉了iptables服務,數據庫還是不能遠程訪問。但是在添加了如上3306的端口規則後,關閉iptables又可以遠程訪問了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章