2011-03-07 65 views
6
  • 服务器IP:172.16.1.169
  • MySQL用户名:root
  • passwd文件:XXXXXXXXXX
  • 数据库名称:例如

我试图从客户端访问数据库(IP 172.16.0.114)。服务器和客户端都运行Linux的Fedora发行版。服务器和客户端需要配置哪些设置以及应该设置哪些设置?我如何访问特定的数据库(这里是“示例”)?我试过,但我得到了一个错误:问题连接到MySQL服务器:ERROR 2003(HY000)

ERROR 2003 (HY000): Can't connect to MySQL server on '172.16.1.169'.

+0

您有不同的网络,例如:172.16.0。*和172.16.1。*。你可以ping 172.16.0.114到172.16.1.169吗? – Arman 2011-03-07 12:31:41

+0

相同的网络....我可以ping ... – Jagan 2011-03-07 12:47:01

+1

同样的问题在这里。 [guido的答案] [1]解决了我的问题。 Thx。 [1]:http://stackoverflow.com/a/6897627/2760065 – robersonfox 2013-09-09 02:07:04

回答

8

由客户端(而不是服务器),因为与服务器的连接已经尝试,但服务器无法达到产生的错误信息。

有多种可能的原因到:

1)检查mysqld正在运行在服务器上:

ps -ef | grep mysqld 

应该返回类似:

root  2435 2342 0 15:49 pts/1 00:00:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/usr/local/var/ --user=mysql 
mysql  2480 2435 0 15:49 pts/1 00:00:00 /usr/local/mysql/libexec/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/var/ --user=mysql ... 

要运行的后台程序服务,在redhat/fedora/centos上运行:

service mysqld start 

或在Fedora释放> = 16,这依赖于systemd:

systemctl start mysqld.service 

和用于在系统启动时使守护程序自动启动:

systemctl enable mysqld.service 

2)检查端口上的mysqld是在服务器上运行:

netstat -lnp | grep mysql 

应该返回:

tcp  0  0 0.0.0.0:3306 0.0.0.0:* LISTEN 2480/mysqld 
unix 2  [ ACC ]  STREAM  LISTENING  8101 2480/mysqld /tmp/mysql.sock 

后者是用于本地连接的套接字,第一个用于网络的tcp端口(默认为3306)。如果端口不是默认端口,则必须在客户端上设置连接端口。如果使用mysql客户端:

mysql dbname -uuser -ppasswd -P<port> ... 

3)是在不同的网络地址,检查服务器为您从连接网addrees监听:在文件/etc/my.cnf搜索该行:

bind_address=127.0.0.1 

如果地址是127.0.0.1,则只允许本地连接;如果它是172.16.1.0,则无法从172.16.2连接。xxx

4)检查服务器上是否没有运行防火墙并阻止连接到mysql端口(3306是默认端口);如果它是一个RedHat/Fedora的/ CentOS的运行

service iptables status 
1
  1. 打开MySQL的配置文件

    须藤的vim的my.cnf

  2. 确保以下被注释掉。

    #跳过外部锁定

    #跳过联网

    #绑定地址= XX.XX.XX.XX

    保存并退出

  3. 重启MySQL服务

+3

谢谢你,它的工作!你能解释这条线是什么改变吗? – 2014-01-08 16:32:55

0

我认为目的地mysql服务器可能使用不同的端口。 您必须先找到正确的端口。

一旦你可以使用这个命令连接到服务器mysql正确的端口:

mysql -h 172.16.1.169 -P (port) -u root -p (password) 
-1

在MySQL配置文件(/etc/mysql/my.cnf)评论“#绑定地址= 127.0.0.1'

保存并重新启动mysql服务。

+0

这是这个问题的答案。我是在Ubuntu 14.04服务器,MySQL 5.6的同样的问题。我评论评论'#绑定地址= 127.0.0.1',它为我工作 – Ramil 2016-05-12 07:34:25

相关问题