私はsymfonyの3.1.5を使用して、私はそれがdocumentationに記載されているように、単純なsymfonyのPDO_PGSQLの教義:データベース:パラメータ
php bin/console doctrine:database:create
を実行しようとしていますを使用していません作成します。
マイparameters.yml
parameters:
database_host: hhvm_db_1
database_port: 5432
database_name: dbname
database_user: dbuser
database_password: mypassword
マイconfig.yml
doctrine:
dbal:
driver: pdo_pgsql
host: "%database_host%"
port: "%database_port%"
dbname: "%database_name%"
user: "%database_user%"
password: "%database_password%"
charset: UTF8
私は、次のエラーメッセージが出ます:
[Doctrine\DBAL\Exception\DriverException]
An exception occured in driver: [32681]: could not translate host name "hhvm_db_1
port=5432 dbname=postgres " to address: Name or service not known
[Doctrine\DBAL\Driver\PDOException]
[32681]: could not translate host name "hhvm_db_1 port=5432 dbname=postgres " to a
ddress: Name or service not known
[PDOException]
[32681]: could not translate host name "hhvm_db_1 port=5432 dbname=postgres " to a
ddress: Name or service not known
Iながら、それがdbname=postgres
を述べたため、エラーメッセージが、私には奇妙に見えます私の中に別のデータベースが指定されているparameters.yml。私はconfig.ymlで直接変更しようとしましたが、それは何も変わりません。データベースのホストとポートは私のparameters.ymlから取得されます。
doctrineは何らかの理由で自分のパラメータを解析できないので、dbnameのデフォルトパラメータを使用しているとします。何が問題なの?
これは実際には問題ではないと思いますが、hhvmを使用したドッカーコンテナでsymfonyを実行しています。上記のエラーメッセージのhhvm_db_1
は、Postgresを実行している2番目のコンテナです。私はバニラPHPとの接続をチェックすると動作し、私はデータベースに接続することができます。したがって、ホストは私のWebコンテナからアクセス可能です。
dbnameを上書きする可能性のある別の設定ファイルを含めることは可能でしょうか? –
これはsymfonyの新鮮なインストールです。異なる環境(test、dev、prod)の 'parameters.yml'と設定ファイルは1つだけです。いずれも追加のデータベース構成を保持していません。しかし、それが私がコンソールスクリプトをデバッグする方法を尋ねた理由です。 – Chrisissorry
IIRC(コマンドフラグ '-vvv'を含む)は、デバッグに役立つ可能性がある最大レベルまでログを増加させます。 –