部署错误 - SQLSTATE [HY000] [2002]连接被拒绝

时间:2016-01-12 16:30:15

标签: php sql symfony

我正在研究symfony应用程序,并且最近尝试将我的工作部署到服务器,因为它具有可用的登录,注册等。

一切都在当地运作良好!请注意,我在我的localhost上使用RDS数据库。我没有使用开发数据库。

最初它在服务器上抱怨我的PHP版本所以我将其更新为5.6并重新编号,现在我在我的日志中得到以下内容!

Creating the "app/config/parameters.yml" file
> Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::buildBootstrap
> Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::clearCache


[Doctrine\DBAL\Exception\ConnectionException]                              
An exception occured in driver: SQLSTATE[HY000] [2002] Connection refused  



[Doctrine\DBAL\Driver\PDOException]        
SQLSTATE[HY000] [2002] Connection refused  



[PDOException]                             
SQLSTATE[HY000] [2002] Connection refused  


Script Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::clearCache handling the post-install-cmd event terminated with an exception


[RuntimeException]                                                             
An error occurred when executing the "'cache:clear --no-warmup'" command:      

  [Doctrine\DBAL\Exception\ConnectionException]                                
  An exception occured in driver: SQLSTATE[HY000] [2002] Connection refused    


  [Doctrine\DBAL\Driver\PDOException]                                          
  SQLSTATE[HY000] [2002] Connection refused                                    


  [PDOException]                                                               
  SQLSTATE[HY000] [2002] Connection refused                                    

.                                                                              


install [--prefer-source] [--prefer-dist] [--dry-run] [--dev] [--no-dev] [--no-plugins] [--no-custom-installers] [--no-autoloader] [--no-scripts] [--no-progress] [-v|vv|vvv|--verbose] [-o|--optimize-autoloader] [-a|--classmap-authoritative] [--ignore-platform-reqs] [--] [<packages>]...
(Executor::NonZeroExitStatus)


[2016-01-12T16:22:49.583Z] ERROR [2219]  : Command CMD-AppDeploy failed!

任何更多信息只需要一个不好的更新!任何帮助将不胜感激!

2 个答案:

答案 0 :(得分:1)

这意味着学说无法建立与数据库的连接。

当您部署symfony app composer时,请查找parameters.yml.dist并复制文件parameters.yml中的所有参数,这些参数将用于配置symfony和任何其他捆绑包。

您需要在parameters.yml.dist中设置正确的数据库信息(主机地址,用户名,密码,数据库名称)

答案 1 :(得分:1)

连接被拒绝,因此是系统调试过程的时候了:

  1. 标识用于连接的主机,用户和密码。这些将出现在Symfony存储这些东西的任何地方。
  2. 如果这些详细信息存在且看起来正确,则使用它们直接登录到您的数据库(通过命令行)以验证它们实际上是否正确。
  3. 检查主机名是否实际解析为托管数据库的位置。例如,如果数据库与PHP在同一台计算机上,并且使用的主机名为db-production,请检查操作系统的hosts文件以查找此条目,并确保它解析为127.0.0.1。通常我会期望主机设置为localhost,在这种情况下,您仍然可以检查hosts文件,但它可能会在那里。
  4. 一旦确定主机,用户和密码是正确的,唯一剩下的就是Symfony没有按预期运行。在这种情况下,我完全没有想法。