Почему Учение говорит, что не может найти драйвер PDO?

Я пробовал Symfony 2 сегодня, и я попытался немного поиграть с Doctrine.

Но когда я использую команду php app/console doctrine:schema:create в командной строке, она возвращает эту ошибку:

[PDOException]
could not find driver

doctrine:schema:create [--dump-sql] [--em[="..."]]

Мой файл php.ini и phpinfo() показывают, что драйвер PDO загружен. Я также создал немного script в чистом PHP для подключения к моей базе данных с использованием PDO, и он отлично работал. Нет ошибок, поэтому PDO хорошо установлен и работает.

PHP и MySQL работают на моем компьютере, используя последнюю версию EasyPHP.

Что могло бы пойти не так с Доктриной? Где я должен смотреть сейчас?

Ответ 1

Вам нужно правильно настроить ваш php cli, чтобы загрузить те же расширения, которые настроена для загрузки версии веб-сервера.

Вот ссылка , где PHP ищет файл конфигурации

Ответ 2

Да, если вы введете php -m в командной строке, он должен указать как PDO, так и pdo_mysql. В моем случае он показал только PDO, поэтому он не смог найти драйвер MySQL.

Как вы уже прокомментировали, я думаю, потому что PHP CLI не может найти подходящий файл php.ini.

Ответ 3

sudo apt-get install php5-mysql

сделает волшебство

Ответ 4

В командной строке проверьте наличие поддержки PDO:

php -m|grep -i pdo

Если нет, найдите поддержку php mysql (Ubuntu):

apt-cache search php5*|grep mysql

И установите его:

sudo apt-get install php5-mysql

После повторной установки проверки packagem вы должны увидеть поддержку PDO mysql.

Ответ 5

В моем случае я попытался запустить bin/console из локального терминала, а не из контейнера докера.

Может быть, это поможет другим!