我试图在laravel 5中执行一个migrate命令。但它显示了一个PDOException错误。我将database.php文件更改为以下文件:
'mysql' => [
'driver' => 'mysql',
'host' => env('DB_HOST', 'localhost'),
'database' => env('DB_DATABASE', 'laravel'),
'username' => env('DB_USERNAME', 'root'),
'password' => env('DB_PASSWORD', ''),
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
'strict' => false,
'engine' => null,
]
对于PDOException:找不到MySQL的驱动程序,如果是基于Debian的操作系统,
sudo apt-get -y install php5-mysql
有关更多信息,请阅读这篇文章PDO异常
如果您正在寻找简单的解决方案,我也遇到了同样的问题&这对我很有效。
当您从终端运行php-artisan时,您将调用php5-cli包。
要使用XAMPP的php运行artisan,您需要使用:
/opt/lampp/bin/php-artisan迁移
但是,请确保您的/opt/lamp/etc/php.ini已正确配置为启用pdo_mysql
可能原因:
- 检查phpinfo()是否安装了pdo,如果没有,则从php.ini启用
注意:当我们安装php.时安装了PDO驱动程序。,php版本也可能是个问题。
您应该设置.env
文件。如果你没有,只需将.env.example
重命名为.env
并使用它
DB_HOST=localhost
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=root
DB_PASSWORD=
https://laravel.com/docs/5.2/configuration#environment-配置
这对我"sudo apt-get-install php5-sqlite"起到了作用。