Corrigi esse problema no meu Debian 6. Normalmente, acabei de instalar o php5-common
pacote. Após a instalação, você deve reiniciar o servidor da web (apache ou nginx, dependendo de qual você instalou). Então eu apenas faço um lsof
no processo apache id ( lsof -p process_id
) da seguinte maneira:
sudo lsof -p 1399 #replace 1399 by your apache process id
apache2 1399 root mem REG 254,2 80352 227236 /usr/lib/php5/20090626/xmlrpc.so
apache2 1399 root mem REG 254,2 166496 227235 /usr/lib/php5/20090626/suhosin.so
apache2 1399 root mem REG 254,2 31120 227233 /usr/lib/php5/20090626/pdo_mysql.so
apache2 1399 root mem REG 254,2 100776 227216 /usr/lib/php5/20090626/pdo.so
apache2 1399 root mem REG 254,2 135864 227232 /usr/lib/php5/20090626/mysqli.so
Como você pode ver acima, os módulos são instalados em um caminho de arquivo não conhecido ou guiado pelo caminho comum da biblioteca: / usr/lib/php5/20090626/
. Para sua instalação, pode ser diferente, mas apenas o caminho de pdo_mysql.so, pdo.so, mysqli.so. Portanto, é por isso que o Drupal ou qualquer outro mecanismo php não conseguiu encontrar a biblioteca e mostra esse erro:PDOException: could not find driver
Eu só não sei por que ele está instalado em um caminho tão estranho, para mim é apenas um bug no script de instalação pacote de biblioteca no debian 6. I resolveu o problema criando um símbolo para todos os arquivos sob /usr/lib/php5/20090626/
a
/usr/lib/php5/
com este comando:
ln -s /usr/lib/php5/20090626/* /usr/lib/php5/
php.ini' file and uncomment
extensão = php_pdo_mysql.dll. The path to your
. O arquivo php.ini` pode ser encontrado consultando o seu phpinfo ().