【问题标题】:Symfony2 can't connect to MySQL server on '192.168.1.50' (113)Symfony2 无法连接到“192.168.1.50”上的 MySQL 服务器 (113)
【发布时间】:2015-03-30 20:05:00
【问题描述】:

我有远程 mysql 服务器@192.168.1.50。 我可以在我的电脑上通过 [http://192.168.1.50/phpmyadmin/] 访问它, 或使用

ssh root@192.168.1.50

但是当我在 Symfony2 中运行时

 php app/console doctrine:schema:update --force  gives me error

[PDOException]                                                               
  SQLSTATE[HY000] [2003] Can't connect to MySQL server on '192.168.1.50' (113  
 )

我的参数.yml

parameters:
database_driver: pdo_mysql
database_host: 192.168.1.50
database_port: 3306
database_name: xxhealthdb
database_user: kproduction
database_password: xxroot
mailer_transport: smtp
mailer_host: 127.0.0.1
mailer_user: null
mailer_password: null
locale: en
secret: ThisTokenIsNotSoSecretChangeIt                                                                          

我认为此文件中一定有问题,或者可能是我不知道的其他任何内容。请帮帮我

注意:我在远程服务器上使用 MariaDB 和 CentOS,在我的(客户端)PC 上使用 Ubuntu。

我的日志详情

      2015-01-31 17:35:20] event.DEBUG: Notified event "console.command" to listener    "Symfony\Component\HttpKernel\EventListener\DebugHandlersListener::configure". [] []
    [2015-01-31 17:35:20] event.DEBUG: Notified event "console.command" to listener "Symfony\Bridge\Monolog\Handler\ConsoleHandler::onCommand". [] []
 [2015-01-31 17:35:20] event.DEBUG: Notified event "console.command" to listener "Symfony\Bridge\Monolog\Handler\ConsoleHandler::onCommand". [] []
  [2015-01-31 17:35:20] event.DEBUG: Notified event "console.terminate" to listener "Symfony\Bundle\SwiftmailerBundle\EventListener\EmailSenderListener::onTerminate". [] []
   [2015-01-31 17:35:20] event.DEBUG: Notified event "console.terminate" to listener "Symfony\Bridge\Monolog\Handler\ConsoleHandler::onTerminate". [] []
    [2015-01-31 17:35:20] event.DEBUG: Notified event "console.terminate" to listener "Symfony\Bridge\Monolog\Handler\ConsoleHandler::onTerminate". [] []

【问题讨论】:

    标签: php mysql symfony centos mariadb


    【解决方案1】:

    默认情况下,数据库服务器不允许来自用户应用程序的连接。 这可能是您的数据库服务器配置错误。

    尝试在此处附加日志,以便我可以进一步帮助您。

    Symfony2 日志可以在:/app/logs 目录中找到。

    祝你好运!

    【讨论】:

    • 请查看我的日志详情
    • @AnishShah 这些不是完整的日志吗?其中没有错误或警告。
    • 这些是我的开发日志文件中生成的唯一日志
    • 那么我想你应该开始手动故障排除了。正如我之前提到的,检查数据库服务器上的配置,检查数据库的远程访问权限
    • 如果有任何远程服务器许可问题,那么我可能无法使用 ssh 和访问远程数据库,但我可以做到
    【解决方案2】:

    您记得在允许远程访问中添加您的 IP 吗?这可能是原因之一。

    【讨论】:

    • 登录服务器的控制面板并查找名为“允许远程访问数据库”的内容
    • 我把允许所有...放在 php 配置文件中
    • 也许这可能会有所帮助。 mariadb.com/kb/en/mariadb/… 如果您遇到困难,您可能需要联系您的托管公司以帮助您
    【解决方案3】:

    您正在运行 MariaDB 服务器并且 Symfony2 正在尝试连接 MySql 服务器。尝试为 centos7 安装 MySQL 服务器并配置 /etc/my.cfg 下的 MySql 配置文件。

    确保您的服务器 [mysql] 和 [client] 允许从默认端口 3306 进行连接。

    确保您的 centos 防火墙允许 3306 上的 TCP 公共连接。

    配置上述更改后,重新启动您的 MySQL 服务器并重试,它应该可以工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-02-08
      • 2020-12-03
      • 2021-02-17
      • 1970-01-01
      • 1970-01-01
      • 2010-09-27
      • 2015-05-10
      • 2012-11-03
      相关资源
      最近更新 更多