2013-12-21 4 views
0

Doctrine과 함께 Zend 프레임 워크를 사용하고 있으며 localhost에서 내 서버로 전송하고 있지만이 오류가 발생했습니다. 모든 것이 잘 작동합니다.데이터베이스와의 연결 Doctrine PDO

Warning: PDO::__construct() [pdo.--construct]: [2002] No such file or directory 
(trying to connect via unix:///tmp/mysql.sock) in /www/webvol19/94/yi8ghefpta7q527/ 
mywebsite.com/vendor/doctrine/Doctrine/DBAL/Driver/PDOConnection.php on line 36 

내 연결 설정은 다음과 같습니다

// pdo connection definition 

'db' => array(
    'driver'   => 'Pdo', 
    'dsn'   => 'mysql:dbname=dbname123;host=mysql410.ddd.com', 
    'username' => 'user', 
    'password' => 'pass121512', 
    'driver_options' => array(
     PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES \'UTF8\'' 
    ), 
), 

// doctrine connection definition 
'doctrine_config' => array (
    'proxy_directory' => APP_PATH 
         . DIRECTORY_SEPARATOR 
         . 'data' 
         . DIRECTORY_SEPARATOR 
         . 'Doctrineproxy', 
    'proxy_namespace' => 'Doctrineproxy', 
    'doctrine_db_conn_params' => array (
     'driver' => 'pdo_mysql', 
     'user'  => 'user', 
     'password' => 'pass121512', 
     'dbname' => 'dbname123', 
    ), 
    'is_dev_mode' => true, 
), 

나는이 내 웹 사이트의 이름 앞에

/www/webvol19/94/yi8ghefpta7q527/ 
+0

서버에서 mysql을 실행 중입니까? 그렇다면 구성 방법은 무엇입니까? mysql이 로컬 또는 외부 IP 또는 소켓 파일을 듣고 있습니까? /tmp/mysql.sock 파일이 있습니까? – edigu

+0

localhost 또는 127.0.0.1과 같은 호스트를 사용하십시오. –

답변

1

당신은 당신이 당신의 서버 만 응용 프로그램에 로컬 호스트에서 전송 말할 무엇인지 확실하지 않다 여전히 localhost에 연결됩니다.

Doctrine config에는 자체 데이터베이스 매개 변수가 포함되어 있으며 미리 정의 된 외부 데이터베이스 구성과는 독립적입니다. 귀하의 경우 호스트와 (선택적으로) 포트를 가리켜 야합니다. :

'doctrine_config' => array (
    ... 
    'doctrine_db_conn_params' => array (
     'driver' => 'pdo_mysql', 
     'user'  => 'user', 
     'password' => 'pass121512', 
     'dbname' => 'dbname123', 
     /* add this */ 
     'host' => 'mysql410.ddd.com', 
     //'port' => 3306 
    ), 
    ... 
),