SQLyog客戶端無法連線MySQL伺服器案例分析
實驗環境:
作業系統:Redhat 6.4
IP:10.1.1.99(虛擬機器)
資料庫:MYSQL5.1
在Linux上安裝好MYSQL之後,進行本地登入
[root@wjq2 ~]# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 10
Server version: 5.1.66 Source distribution
Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
登陸成功;
下面透過SQLyog客戶端來遠端連線MYSQL伺服器所遇問題進行分析:
問題一:
問題分析:
[root@wjq2 ~]# service mysqld status
mysqld (pid 2364) is running...
[root@wjq2 ~]# netstat -nalp | grep "3306"
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 2364/mysqld
tcp 0 0 10.1.1.99:3306 10.1.1.123:55569 ESTABLISHED 2364/mysqld
tcp 0 0 10.1.1.99:3306 10.1.1.123:55568 ESTABLISHED 2364/mysqld
本地使用者可以用3306埠連線,說明網路沒有問題,3306埠也開啟著,其實問題可能出在iptables,檢視iptables的執行狀態
[root@wjq2 ~]# service iptables status
iptables: Firewall is not running.
發現iptables是禁用狀態,所以問題並不是出現在iptables這裡。
注意:
1、如果你的iptables沒有禁用,可以禁用iptables;
2、如果不想禁用iptables也可以,把-A INPUT -m state --state NEW -m tcp -p tcp --dport
3306 -j ACCEPT新增到/etc/sysconfig/iptables即可,表示允許3306埠透過防火牆。
[root@wjq2 ~]# cat
/etc/sysconfig/iptables
# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
-A
RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
COMMIT
修改完之後,需要重新啟動iptables方可生效
禁用iptables或修改完配置檔案之後,再次遠端連線MYSQL,又出現如下的錯誤:
問題二:
問題分析:
根據錯誤提示,10.1.1.123是我本地主機的網路卡IP,遠端連線時不允許透過該主機連線到MYSQL伺服器;可以初步判斷可能是應為缺少許可權;
下面我將允許使用者root使用密碼XXX從任何主機連線到MYSQL伺服器
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'XXX' WITH GRANT OPTION;
Query OK, 0 rows affected (0.00 sec)
或者是允許使用者root從IP為10.1.1.123的主機連線到MYSQL伺服器,並使用XXX作為登入密碼
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'10.1.1.123' IDENTIFIED BY 'XXX' WITH GRANT OPTION;
Query OK, 0 rows affected (0.00 sec)
授權成功之後,再次嘗試進行遠端連線,可以發現連線成功;
作者:SEian.G(苦練七十二變,笑對八十一難)
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31015730/viewspace-2143797/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- mysql、redis 客戶端連線池MySqlRedis客戶端
- mysql 遠端無法連線MySql
- sqlyog怎麼連線mysqlMySql
- 客戶端怎麼連線到伺服器?客戶端伺服器
- 使用 WebSocket 客戶端連線 MQTT 伺服器Web客戶端MQQT伺服器
- impala客戶端連線客戶端
- 遠端桌面無法連線伺服器?伺服器
- 阿里雲伺服器無法遠端連線阿里伺服器
- 無法遠端連線mysql怎麼解決MySql
- Redis客戶端連線數DevOpsRedis客戶端dev
- OceanBase學習之路7|透過 MySQL 客戶端連線 OceanBase 租戶MySql客戶端
- 無法遠端連線vps 伺服器的原因伺服器
- navicat無法遠端連線mysql的解決方法MySql
- 無法rdo遠端連線,無法rdo遠端連線控制多臺伺服器,如何檢測其狀態?伺服器
- 無法連線遠端伺服器 批次管理雲伺服器伺服器
- 伺服器無法遠端連線怎麼解決伺服器
- windows10系統下遠端桌面連線失敗客戶端無法建立與遠端計算機的連線如何解決Windows客戶端計算機
- Golang 實現客戶端與伺服器端UDP協議連線通訊Golang客戶端伺服器UDP協議
- 無法連線遠端,Windows系統電腦無法遠端連線怎麼辦Windows
- Java 客戶端 Jedis和JedisPool 連線池Java客戶端
- 本地無法連線Mysql的原因MySql
- Spring Boot+Socket實現與html頁面的長連線,客戶端給伺服器端發訊息,伺服器給客戶端輪詢傳送訊息,附案例原始碼Spring BootHTML客戶端伺服器原始碼
- 用SQLyog或Navicat遠端連線資料庫SQL資料庫
- Oracle 19c中連線RMAN客戶端的連線方法Oracle客戶端
- 客戶端無法重新使用 SPID 為 2799 的會話,該會話已被重置用於連線池客戶端會話
- 無線1x客戶端編寫概要客戶端
- 關於 SQLyog 遠端連線 Linux 系統的 MySQL 失敗的解決方法LinuxMySql
- 【LISTENER】Oracle分析連線監聽情況,判斷客戶端IP分佈Oracle客戶端
- MySQL 客戶端安裝MySql客戶端
- ORA-21561 OID generation failed [Ubuntu 16.04下Oracle客戶端連線伺服器]AIUbuntuOracle客戶端伺服器
- 無法連線到web伺服器iisWeb伺服器
- 使用 Java 客戶端透過 HTTPS 連線到 EasysearchJava客戶端HTTP
- Presto學習筆記——Go客戶端連線PrestoREST筆記Go客戶端
- gRPC學習記錄(六)--客戶端連線池RPC客戶端
- HTTP客戶端連線,選擇HttpClient還是OkHttp?HTTP客戶端client
- 4.2.14 啟用客戶端快速連線故障轉移客戶端
- ESP作為單連線中的TCP客戶端TCP客戶端
- 物理DataGuard客戶端無縫切換--客戶端TAF 配置客戶端
- mysql8 無法連線navicat問題MySql