Получение драйвера pdo_mysql для работы в CLI - PullRequest
4 голосов
/ 14 мая 2011

У меня проблема с расширением pdo_mysql в CLI.Я работаю с локальной установкой LAMPP и создаю файл info.php. Я вижу, что у меня есть PDO и драйвер mysql.Но когда я пишу php --ri mysql в командной строке, он возвращает Расширение «mysql» отсутствует .Я прочитал оба php.ini, один для CLI и тот, который загружается для браузера, и я не вижу никаких различий в конфигурации pdo.PDO активирован для CLI, но pdo_mysql - нет, и я не могу найти файл pdo_mysql.so или любой другой файл или строку, которая говорит мне, почему он работает из браузера, а не из Cli.Любая помощь?

Большое спасибо.

Ответы [ 2 ]

6 голосов
/ 27 сентября 2011

Я использую ubuntu + mysql (индивидуальная установка без лампы) и php cli через apt sudo apt-get install php5-cli. PDO установлен по умолчанию, но соответствующий драйвер БД (в моем случае mysql) не был установлен. Это можно проверить из командной строки php --ri pdo, в результате чего поддержка PDO => включена и драйверы PDO => (пусто)

чтобы исправить это для mysql, установите модуль php5-mysql через sudo apt-get install php5-mysql. Очевидно, сделать это после того, как вы установили php5-cli. Если вы используете другую базу данных (например, postgres или odbc), найдите соответствующее имя модуля через sudo apt-cache search php5

1 голос
/ 16 мая 2011

Проблема решена.У меня есть две установки php, одна установлена ​​LAMPP, на которой установлены все необходимые драйверы pdo, а другая установлена ​​в системе (я не знаю, поставляется ли она с ubuntu по умолчанию, или я установил ее в какой-то момент) с включенным PDO, но без PDOводители.CLI работает со вторым PHP, если вы не скажете ему иначе.Я работал с Doctrine из CLI, но выполнял bash-файл, который вызывает некоторый php-код.В первой строке файла .doctrine я могу сказать системе, какой php я хочу использовать:

#!/root/to/lampp/php

И это сработало (на самом деле это не создает таблицы базы данных, которые предполагается создать, но этодругая проблема, которую мне еще предстоит решить.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...