Mysql – Can’t get PDO MySQL driver to work on PHP

mampMySQLpdoPHP

Trying to install Vanilla 2 locally using MAMP i got the error:
"You must have the MySQL driver for PDO enabled in order for Vanilla to connect to your database".

When I check phpinfo() I see:

--with-pdo-mysql=shared,/Applications/MAMP/Library
--with-pdo-pgsql=shared,/Applications/MAMP/Library/pg

When I go and check out those paths I find the files:

libpq.5.dylib
libpq.dylib
libpq.5.2.dylib

When I check my php.ini file I see:

; Extensions
extension=pdo_mysql.so

In php.ini the path to the extension dir is correct (checked it manually):

extension_dir = "/Applications/MAMP/bin/php5.3/lib/php/extensions/no-debug-non-zts-20090626/"

In this folder I find the file:

pdo_mysql.so

phpinfo() gives me two sections:

PDO
PDO drivers: sqlite, sqlite2

and

pdo_sqlite
SQLite Library: 3.6.22 

So everything seems to be fine, but can't get the PDO MySQL driver working 🙁

Best Answer

Note that pdo_mysql != pdo_sqlite. It does not appear that it is loading the PDO MySQL driver that Vanilla is looking for. It wouldn't be the first time that PDO-MySQL hasn't worked properly on MAMP.

I know with WAMP it has pre-compiled all of the binaries for you; it might not work in your specific environment because of this. I would recommend compiling PHP and the PDO-mySQL extension manually to make sure it will work.