У меня возникают реальные проблемы с работой PDO_MYSQL.
Я начал с того, что просто пытался установить драйвер PDO_MYSQL через PECL, но когда это не помогло, я посмотрел вокруг, чтобы узнать, есть ли там какие-либо проблемы. Кажется, что может возникнуть конфликт между встроенной версией PDO и PDO_MYSQL. С этой целью я решил переустановить все его зависимости из PECL.
Envrioment:
ОС: UNBUNTU PHP Ver: 5.1.6 (невозможно обновить из-за жизни клиентов)
Последовательность действий:
PECL uninstall PDO_MYSQL PECL uninstall PDO PECL uninstall mysql PECL install mysql PECL install PDO PECL install PDO_MYSQL Lines Added to PHP.ini extension=mysql.so extension=pdo.so extension=pdo_mysql.so apachectl restart [warn] php5_module is already loaded, skipping
Затем я проверяю PHPINFO, чтобы узнать, какие модули установлены. Я вижу:
PDO drivers sqlite2
Это оно!
Если бы кто-нибудь мог предложить какие-либо решения для этого, я был бы очень впечатляюще. Мне нужен драйвер MYSQL PDO для запуска zend framework для предстоящего проекта ….. и да, я должен использовать v1.6 из-за версии PHP. Doh!
Если вы на ubuntu, попробуйте apt-get:
sudo apt-get install php5-mysql
которые должны
/usr/lib/php5/20060613+lfs/pdo.so
и PDO будут доступны после перезапуска apache
Для тех, у кого есть проблемы с этим, убедитесь, что установлена библиотека libmysqlclient15-dev:
sudo apt-get install libmysqlclient15-dev
Затем используйте:
sudo apt-get install pdo_mysql
Без библиотеки libmysqlclient15-dev у вас будут проблемы с pdo.
Нашли эти страницы, чтобы быть весьма полезными:
http://pecl.php.net/bugs/bug.php?id=12141
http://ubuntuforums.org/showthread.php?t=474152