2013-02-27 144 views
1

我查看了所有相关的问题和答案,但仍然有问题连接到远程mysql数据库。如何连接远程mysql数据库

我做了什么至今..

CREATE USER 'root'@'192.168.1.100' IDENTIFIED BY '***'; 
GRANT ALL PRIVILEGES ON * . * TO 'root'@'192.168.1.100' IDENTIFIED BY '***' WITH GRANT OPTION MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ; 
my.cnf file in server (which is in /etc/my.cnf path let me if it is not correct) 
[mysqld] 
innodb_file_per_table=1 
#bind-address = 127.0.0.1 
#skip-networking 

以下是我的项目的database.yml中。

all: 
    doctrine: 
    class: sfDoctrineDatabase 
    param: 
     dsn:  mysql:host=[ip of remote server];dbname=dev_db 
     username: user 
     password: user12 
     encoding: utf8 
     attributes: 
     use_native_enum: true 
     default_table_type: INNODB 
     default_table_collate: utf8_unicode_ci 
     default_table_charset: utf8 

我得到以下异常

PDO Connection Error: SQLSTATE[HY000] [2003] Can't connect to MySQL server on '50.115.116.203' (4) 

那么还有什么是缺少配置远程数据库。

请帮忙

谢谢。

+0

您确定您拥有正确的IP地址吗? – christopher 2013-02-27 17:36:49

+0

是它的正确,我可以通过该IP成功地通过ssh登录。 – hardik 2013-02-27 17:39:53

+0

50.115.116.203上的扫描端口 50.115.116.203在端口3306(mysql)上没有响应。 mysql运行的是什么端口,因为它不是默认的3306 – supajason 2013-02-27 17:40:39

回答

0

192.168.1.100这是本地网络IP,您已将此IP用作用户的允许主机。但是,当您连接到此服务器时,您正在使用公共IP地址50.115.116.203。 请检查您连接的服务器是否具有与您为用户添加的IP相同的IP作为允许的主机