You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

执行php artisan migrate时出现could not find driver错误求助

Laravel 迁移报错:could not find driver

我之前也碰到过一模一样的问题!这个错误核心原因是PHP缺少MySQL的PDO扩展驱动,导致Laravel无法和MySQL数据库建立连接。先把你的错误信息和配置贴出来方便对照:

报错信息

In Connection.php第664行: could not find driver (SQL: select * from information_schema.tables where table_schema = laravel and table_name = migrations)
In Connector.php第67行: could not find driver

你的.env数据库配置

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=root
DB_PASSWORD=

接下来咱们一步步解决:

  • 第一步:安装/启用PHP的MySQL PDO扩展
    不同系统的操作不一样:

    • Windows(用XAMPP/WAMP这类集成环境):找到PHP安装目录下的php.ini文件,找到;extension=pdo_mysql这一行,把前面的分号;删掉,保存后重启你的web服务器(比如Apache)。
    • Ubuntu/Debian:打开终端,执行sudo apt-get install php-mysql(如果你的PHP是特定版本,比如8.2,就用sudo apt-get install php8.2-mysql),安装完成后重启Apache:sudo systemctl restart apache2,如果用Nginx就重启Nginx:sudo systemctl restart nginx。
    • CentOS/RHEL:执行sudo yum install php-mysqlnd,然后重启httpd服务:sudo systemctl restart httpd。
  • 第二步:验证扩展是否生效
    两种方法任选其一:

    1. 新建一个phpinfo.php文件,内容写<?php phpinfo(); ?>,放到你的web根目录,访问这个文件,搜索pdo_mysql,如果能看到相关的配置信息,说明扩展已经启用。
    2. 直接用命令行:执行php -m | grep pdo_mysql,如果输出pdo_mysql,就说明扩展生效了。
  • 第三步:刷新Laravel配置缓存
    有时候Laravel会缓存旧的配置,导致新的扩展生效后还是报错,执行php artisan config:clear清除配置缓存,然后再重新运行迁移命令php artisan migrate试试。

最后再确认下你的MySQL服务是不是正常运行的:Windows可以去服务列表里看MySQL状态,Linux执行systemctl status mysql就能确认。

内容的提问来源于stack exchange,提问作者Nikita

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 07:46:18