2013-06-12 1 views
0

젠드 프레임 워크 2 + Doctrine을 manual에서 설치하려고하는데 PDO 드라이버에 문제가 있습니다.PDOException이 Zend Framework 2 + Doctrine에서 드라이버를 찾을 수 없습니다.

: 이것은 내 설정/자동로드/doctrine.local.php입니다

[PDOException] 
could not find driver 

:이 오류가

./vendor/bin/doctrine-module orm:schema-tool:create

교리는 스키마를 만들려고 다음 내 MySQL 서버에 연결을 시도하고있다

return array( 'doctrine' => array(
    'connection' => array(
     'orm_default' => array(
     'driverClass' =>'Doctrine\DBAL\Driver\PDOMySql\Driver', 
     'params' => array(
      'driver' => 'pdo_mysql', 
      'host'  => 'localhost', 
      'port'  => '3306', 
      'user'  => 'root', 
      'password' => 'password', 
      'dbname' => 'blog', 
))))); 

필자는 PHP 5.3.5를 가지고 있으며, php.ini에서 ;extension=php_pdo_mysql.dll의 주석 처리를 해제했으며, 주석을 달지 않았습니다. 그러나 php -m | grep -i pdo 날 준다 :

PDO

전용입니다. 나는 그것이 pdo_mysql 일 것임에 틀림 없다라는 것을 알고있다. 그러나 나는 모든 것을 시험해보고있다. 그리고 그것은 나타나지 않는다.

어쨌든 PDO 드라이버는 Zend와 Doctrine을 사용하지 않는이 서버의 다른 프로젝트에서 잘 작동합니다.

+0

'php -m'을 할 때'PDO'와'pdo_mysql'을 모두보아야합니다. 마지막 하나가 어댑터이기 때문에. 'pdo_mysql'가리스트되어 있지 않은 경우, 그 확장 기능은 올바르게 기동되고 있지 않습니다. 그것은 쉽지 :) – netiul

+0

@netiul 연장을 올바르게 활성화해야하는 방법은 무엇입니까? 드라이버를 설치할 설명서가 없으므로, 기본적으로 내 서버에 설치해야합니다. – user2476482

답변

1

오 예. 나는 방금 문제가 해결되었습니다. 나는이 page에 가서 내 다른 곳의 php.ini 파일 아마 PHP 폴더를 찾을 생각 해요 - 그것은이었다 "C:\Users\%username%\AppData\Local\VirtualStore\Program Files (x86)\wamp\bin\php\php5.3.5" 하나 더하고

;extension=php_pdo_mysql.dll 

는 주석을하지 않았다가 행. 나는 그것의 주석을 제거하고 작동합니다!

+0

다행스럽게 해결했습니다. – netiul

+0

글쎄, 나도 같은 문제가 있었지만 내가 sqlite를 사용하고 있기 때문에 나는 주석 처리를하지 않았다. extension = php_pdo_sqlite.dll 그리고 ZF2에서 sqlite DB를 연결하는 동안 try catch를 추가했을 때이 에러에 대해 알게되었다. http://stackoverflow.com/ 질문/13108482/how-to-catch-exceptions-in-your-zf2-controllers (질문에 대한 질문과 관련이 없다는 것을 알고 있지만, 문제를 빨리 발견하는 데 도움이 될 것입니다) – rohu2187

관련 문제