2010-03-14 2 views
1

Я пытаюсь изучить структуру Symfony для PHP, но имею проблемы с версией php командной строки.Как включить PDO_MYSQL для CLI?

При попытке создания таблиц базы данных:

./symfony doctrine:insert-sql 

Я получаю следующее сообщение об ошибке:

Couldn't locate driver named mysql 

Это только вопрос с версией командной строки РНР. У меня не было доктрины.

После быстрого ознакомления с проблемой кажется, что мне нужно включить PDO_MYSQL для установки PHP в PHP. Я просмотрел файл php.ini и, похоже, для него нет соответствующей записи.

Есть ли какой-либо простой способ сделать версию CLI использовать точно такую ​​же конфигурацию моей конфигурации LAMPP, чтобы свести к минимуму осложнения в будущем?

Любые советы были бы весьма полезными.

Спасибо.

+0

Возможный дубликат [Получение драйвера pdo \ _mysql для работы в CLI] (http://stackoverflow.com/questions/6001316/getting-pdo-mysql-driver-to-work-in-cli) –

ответ

0

проверьте php.ini в папке apache и скопируйте информацию PDO в php.ini в вашей папке php.

В моей конфигурации lampp я просто 'расширение = pdo.so' в php.ini

3

Я использую ubuntu + mysql (индивидуальная установка не-лампа) и php cli через apt:

sudo apt-get install php5-cli

PDO установлен по умолчанию, но соответствующий драйвер db (mysql в моем случае) не был установлен. Это можно проверить с помощью командной строки php --ri pdo, что приводит к:

PDO support => enabled 
PDO drivers => [ blank ] 

Чтобы исправить это для mysql, установите php5-mysql модуль через

sudo apt-get install php5-mysql

Очевидно, что сделать это после того, как вы установили php5-cli , Если вы используете другой БД (например, postgres или odbc) ищет соответствующее имя модуля через

sudo apt-cache search php5

К сожалению, crossposted от my answer here.

0

Я думаю, что эти ответы немного устарели. Правильным ответом будет sudo apt-get install php-mysql. Выполнение php5-mysql не приведет к обнаружению пакета, особенно на машинах, на которых установлен php7-cli. Как упоминалось, проблема заключается в том, что, хотя поддержка PDO включена, драйвер не установлен. Я просто решил это, выполнив приведенную выше команду.

Смежные вопросы