【问题标题】:Illuminate\Database\QueryException could not find driver LaravelIlluminate\Database\QueryException 找不到驱动程序 Laravel
【发布时间】:2022-06-15 03:30:53
【问题描述】:

我在 Debian 10 机器上的 apache 服务器上部署了一个 laravel 项目。 该数据库是部署在同一网络上另一台 debian 10 机器上的 MySQL。

我可以进入应用程序的连接界面,但是当我连接时出现这个错误:

Illuminate\Database\QueryException
could not find driver (SQL: select * from `users` where `email` = test@gmail.com limit 1)

我已经尝试过这些命令:

php artisan migrate
sudo apt install php-mysql
sudo apt install php7.4-mysql
sudo systemctl restart apache2
composer require doctrine/dbal
composer update

这些命令有效,但不能解决问题。

我已经尝试在 php.ini 中注释和取消注释这一行:

extension=pdo_mysql

在 php-m 我有 PDO 和 pdo-mysql

我已经重启了我的服务器:

systemctl restart apache2

修改后

【问题讨论】:

  • 如果你从命令行运行 php -m ,它会列出 pdo 吗?如果是
  • 你在评论和取消评论后重启了你的php服务器
  • 同时确保运行 php artisan -vvv 以获得更详细的输出并检查您配置的日志文件,默认 storage/log/laravel.log 以获得更多信息,可能有一个堆栈跟踪告诉更准确地说是什么错误

标签: php mysql laravel driver


【解决方案1】:

我在运行我的测试套件时遇到了同样的错误。它以前可以工作,但在我升级 php 后它停止工作。所以我做到了,它对我有用。

sudo apt-get install php-sqlite3

【讨论】:

  • 我试过了,但对我不起作用:/
【解决方案2】:

如果你使用php artisan migrate没问题,那么命令行调用php脚本也没问题。如果您使用 fpm 并安装了新的扩展程序,则需要重新启动并尝试。

【讨论】:

  • 在 artisan 命令中添加 -vvv 以获取更详细的错误信息也可能会有所帮助
【解决方案3】:

我终于找到了解决办法 事实上 apache 使用的 php 版本是 7.3 而不是 7.4 :

<?php phpinfo() ?>

但是当我这样做时:

php --version

版本确实是 7.4。 我按照本教程更改版本 https://tecadmin.net/switch-between-multiple-php-version-on-debian/?amp 它有效

【讨论】:

    猜你喜欢
    • 2020-12-26
    • 2019-12-24
    • 1970-01-01
    • 1970-01-01
    • 2021-12-04
    • 2021-06-10
    • 2020-10-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多