Symfony使用Doctrine ORM创建新数据库提示找不到驱动如何解决?
问题解决步骤
你遇到的could not find driver报错核心原因是CLI模式下运行的PHP没有启用PDO MySQL扩展,按以下步骤排查解决即可:
- 第一步:启用PHP的PDO MySQL扩展
打开XAMPP安装目录下的php.ini配置文件:- Windows系统默认路径:
C:\xampp\php\php.ini - macOS系统默认路径:
/Applications/XAMPP/xamppfiles/etc/php.ini
搜索以下两行配置,删除行首的注释符;后保存文件:
修改后为:;extension=pdo_mysql ;extension=mysqli
重启XAMPP的Apache服务使配置生效。extension=pdo_mysql extension=mysqli - Windows系统默认路径:
- 第二步:确认命令行使用的是XAMPP内置的PHP版本
很多设备系统会自带独立的PHP版本,该版本默认没有开启PDO MySQL扩展,会和XAMPP的PHP版本冲突:- 命令行执行
php -v,查看输出的PHP版本是否和XAMPP面板中显示的PHP版本一致 - 执行
php -m查看已加载扩展列表,确认列表中存在pdo_mysql项 - 如果版本不一致:
- Windows系统:将XAMPP安装目录下的
php文件夹路径添加到系统环境变量PATH的最顶部,替换原有系统PHP的路径,重启命令行工具生效 - macOS/Linux系统:执行命令时指定XAMPP的PHP路径即可,示例:
/Applications/XAMPP/xamppfiles/bin/php bin/console doctrine:database:create
- Windows系统:将XAMPP安装目录下的
- 命令行执行
- 第三步:验证修复结果
扩展配置生效后重新执行创建数据库的命令:
正常情况下会提示数据库创建成功,如果提示数据库已存在,可添加$ bin/console doctrine:database:create--if-not-exists参数避免报错。
内容的提问来源于stack exchange,提问作者Jalel MED
相关产品推荐
相关产品推荐

