Symfony:驱动程序中发生异常:找不到mysql驱动程序

时间:2017-04-06 18:57:59

标签: php mysql windows symfony

我正在尝试连接在服务器(docker)上运行的数据库(mysql)。我在Windows上编程。

在我的symfony项目中,我做了以下事情: parameters.yml

- >填写正确的参数

config.yml

doctrine:
    dbal:
        driver: pdo_mysql
        host: '%database_host%'
        port: '%database_port%'
        dbname: '%database_name%'
        user: '%database_user%'
        password: '%database_password%'

的php.ini

extension=php_mysqli.dll
extension=php_pdo_mysql.dll
extension=php_pdo_sqlite.dll

完成所有这些后,我收到以下错误:An exception occured in driver: could not find driver

任何人都可以提供帮助,因为我已经尝试了一些解决方案,这些解决方案已经提供但没有一个解决方案或者适用于Linux系统。

5 个答案:

答案 0 :(得分:9)

你必须安装mysql:sudo apt install php-mysql

答案 1 :(得分:2)

好吧,我犯了一个非常愚蠢的错误。我正在编辑php.ini文件,但我没有将它重命名为php.ini(它是php.ini-prod)。之后我只需要在extension_dir中输入正确的路径并且它正常工作。

希望这有助于其他人。

答案 2 :(得分:1)

就我而言,在在线教程中找到的 i 末尾缺少 mysql,因为在我的 PC 上,我启用了 mysqli PHP 扩展而不是 {{ 1}},现在早已弃用。

所以我这样编辑了 Symfony 的 mysql .env.local 条目:

DATABASE_URL

请注意带有 DATABASE_URL="mysqli://youruser:yourpasswd@127.0.0.1:3306/yourdbname" 的第一部分,其他数据取决于您的设置。

答案 3 :(得分:0)

如果这对其他人有帮助:在运行需要数据库的命令(例如bin/console make:migration)时遇到相同的问题,但原因完全不同。我是从计算机上运行命令的,而不是在php容器中的 中运行它。在php容器中运行它可以解决问题。

答案 4 :(得分:0)

在您的 .env 文件中注释此行。 yourproject/.env

#DATABASE_URL="postgresql://db_user:db_password@127.0.0.1:5432/db_name?serverVersion=13&charset=utf8"file

并删除第一个 mysql 配置代码中的 #

在这部分设置您的用户名和密码

DATABASE_URL="mysql://usename:password@127.0.0.1:3306/test?serverVersion=5.7"