Why does Doctrine say it can't find the PDO driver?

我的未来我决定 提交于 2019-12-01 14:00:09

问题


I tried Symfony 2 today and I tried to play a bit with Doctrine.

But when I use the command php app/console doctrine:schema:create in the command line, it returns this error:

[PDOException]
could not find driver

doctrine:schema:create [--dump-sql] [--em[="..."]]

My php.ini file and phpinfo() cleary show that the PDO driver is loaded. I also created a little script in pure PHP to connect to my database using PDO and it worked fine. No error, so PDO is well installed and works.

PHP and MySQL are running on my computer using the last version of EasyPHP.

What could have gone wrong with Doctrine? Where should I look now?


回答1:


You need to configure correctly your php cli, to load the same extensions that the web server version has configured to load.

Here is a link on where PHP searches for the configuration file




回答2:


Yeah, if you type php -m at the command line, it should list both PDO and pdo_mysql. In my case it showed only PDO which is why it could not find the MySQL driver.

As you've already commented, I think it's because the PHP CLI cannot find a suitable php.ini file.




回答3:


sudo apt-get install php5-mysql

will do the magic




回答4:


On command line, check if you have PDO support:

php -m|grep -i pdo

If not, search for php mysql support (Ubuntu):

apt-cache search php5*|grep mysql

And install it:

sudo apt-get install php5-mysql

After installing the packagem check again, you should see the PDO mysql support.




回答5:


In my case, I've tried to run bin/console from a local terminal and not from the docker container.

Maybe it will help the others!



来源:https://stackoverflow.com/questions/7451945/why-does-doctrine-say-it-cant-find-the-pdo-driver

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!