尝试连接到远程MySQL服务器时“与MySQL服务器连接丢失”

时间:2010-12-21 13:54:02

标签: php mysql zend-framework

我正在使用Zend Framework开发我的应用程序,并尝试连接到局域网中的远程MySQL数据库。

Zend中的数据库连接设置如下:

[GENERAL]
db.adapter     = PDO_MYSQL
db.params.host = 192.168.1.2
db.params.port = 3306

[LIVE:GENERAL] db.params.username = root db.params.password = ** db.params.dbname = djudd

[DEVELOPMENT:GENERAL] db.params.username = root db.params.password = ** db.params.dbname = stellarengine

我收到以下错误:

  
    
      

Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[HY000] [2013] Lost connection to MySQL server at 'reading initial communication packet', system error: 111' in /usr/share/php/Zend/Db/Adapter/Pdo/Abstract.php:129 Stack trace: #0 /usr/share/php/Zend/Db/Adapter/Pdo/Abstract.php(129): PDO->__construct('mysql:host=192....', 'root', 'password', Array) #1 /usr/share/php/Zend/Db/Adapter/Pdo/Mysql.php(96): Zend_Db_Adapter_Pdo_Abstract->_connect() #2 /usr/share/php/Zend/Db/Adapter/Abstract.php(448): Zend_Db_Adapter_Pdo_Mysql->_connect() #3 /usr/share/php/Zend/Db/Adapter/Pdo/Abstract.php(238): Zend_Db_Adapter_Abstract->query('DESCRIBE bny_c ...',数组)#4 /usr/share/php/Zend/Db/Adapter/Pdo/Mysql.php(156):Zend_Db_Adapter_Pdo_Abstract-> query('DESCRIBE {{ 1}}

    
  

请帮我解决这个问题。

4 个答案:

答案 0 :(得分:7)

上次出现此类错误时,我必须将主机从 127.0.0.1 更改为“ localhost ”,然后才能正常运行。

答案 1 :(得分:1)

答案 2 :(得分:0)

我有同样的问题,要解决它我从'localhost:3306' to '127.0.0.1:3306'.

更改了隧道配置中的远程端口

在目标计算机中,localhost正在解析为:: 1但是MariaDB没有侦听IPv6请求...

答案 3 :(得分:0)

此错误表示您连接到错误的服务器或防火墙阻止它或服务器未运行。

您需要与服务器管理员联系以确认正确的详细信息。

对于大多数服务器,您将使用127.0.0.1,但有些服务器使用localhost,而其他服务器(如媒体服务器)则需要完整的域名 - 例如internal-db.s421234.gridserver.com