Symfony2部署到平台sh.SQLSTATE[HY000][2002]失败



我在将Symfony2项目上传到platform.sh时遇到了问题。我根据symfony文档(我已经创建了.platform.app.yaml、.platform/routes.yaml和.platform/services.yaml)一步一步地完成了所有操作。但当我试图将所有操作推送到platform.sh主分支时,我遇到了如下所述的问题。

 Generating runtime configuration.
  Found a `composer.json`, installing dependencies.
  Executing post-build hook...

      [DoctrineDBALExceptionConnectionException]                              
      An exception occured in driver: SQLSTATE[HY000] [2002] Connection refused  

      [DoctrineDBALDriverPDOException]        
      SQLSTATE[HY000] [2002] Connection refused  

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

  E: Unknown error in the toolstack: CalledProcessError: Command 'rm web/app_dev.php
  app/console --env=prod assetic:dump --no-debug
  ' returned non-zero exit status 1
E: Error building the project: Unable to build project, aborting deployment.

它正在中止一切。我有一个项目,我开发了3个月,我不能上传到任何地方。。。现在我真的很困惑。

我读到,我应该更改参数。yml,其中是DB的条令设置。我的文件:

parameters:
    database_driver: pdo_mysql
    database_host: 127.0.0.1
    database_port: '3306'
    database_name: yoda_event
    database_user: root
    database_password: null
    mailer_transport: gmail
    mailer_host: ~
    mailer_user:     xxxxxxxxxxxxxxxxxxxxxxx
    mailer_password: xxxxxxxxxxxxxxxxxxxxxxx
    locale: en
    secret: xxxxxxxxxxxxxxxxxxx
    debug_toolbar: true
    debug_redirects: false
    use_assetic_controller: true
    assets_directory: 'assets'

config.yml:

imports:
    - { resource: parameters.yml }
    - { resource: security.yml }
    - { resource: parameters_platform.php }
[...]
# Doctrine Configuration
doctrine:
    dbal:
        driver:   "%database_driver%"
        host:     "%database_host%"
        port:     "%database_port%"
        dbname:   "%database_name%"
        user:     "%database_user%"
        password: "%database_password%"
        charset:  UTF8
        # if using pdo_sqlite as your database driver, add the path in parameters.yml
        # e.g. database_path: "%kernel.root_dir%/data/data.db3"
        # path:     "%database_path%"

问题是,我如何为SQL正确设置以将项目部署到PLATFORM.SH?请告诉我如何解决这个问题。我已经试着部署了两周了。。。我对此感到非常孤独。

我使用的是win7/64bit,但当我部署它时(至少),我会将系统更改为linux。

我也遇到了同样的问题,因为trick已经初始化,并请求数据库知道使用了哪个版本的mysql。我通过在我的条令配置下添加以下内容来解决这个问题:

doctrine: dbal: [...] charset: UTF8 server_version: 5.6

[DoctrineDBALExceptionConnectionException]                              
      An exception occured in driver: SQLSTATE[HY000] [2002] Connection refused  

很明显,你的应用程序无法连接到数据库。你可以试着用localhost代替127.0.0.1,但我怀疑它是否有帮助。

无论如何,您正在连接的主机出现了问题:数据库可能已关闭或不存在,IP可能无效,防火墙可能会阻止连接等。

相关内容

  • 没有找到相关文章

最新更新