Yii2异常'yii \ db \ Exception',消息'找不到驱动程序'

时间:2017-12-23 14:31:11

标签: php database yii2 console config

我有一个高级的yii2模板。我正在尝试创建一个控制台命令。 我已经创建了一个控制器类和操作控制台/控制器文件夹:

namespace console\controllers;

use yii\console\Controller;

class WorkModelController extends Controller
{
    public function actionValidate(){}
}

我的动作应该与mysql数据库连接,选择一些数据并用它做一些事情。当我运行命令时:yii work-model / validate我收到此错误:

  

C:\ OSPanel \ domains \ localhost> yii work-model / validate异常   'yii \ db \ Exception',消息'找不到驱动程序'

     

在   C:\ OSPanel \域\本地主机\厂商\ yiisoft \ yii2 \分贝\ Connection.php:56

我的console / config / main.php和main-local.php文件包含下一个db-config:

'components' => [
        'db' => [
            'class' => 'yii\db\Connection',
            'dsn' => 'mysql:host=localhost;dbname=dbname',
            'username' => 'root',
            'password' => '',
            'charset' => 'utf8',
        ],
];

当我尝试从应用程序的另一部分连接到数据库时,一切正常,但是当我尝试从控制台连接时,我收到此错误。

请帮我解决这个错误。

1 个答案:

答案 0 :(得分:2)

尝试从cli运行php -me并确保pdo_mysql在那里。 如果没有,那么你需要从你的php.ini配置启用它。

有时,当您使用服务器堆栈(例如lamp / xampp)时,您可能错过了重新同步您的环境路径以使用相同版本的服务器堆栈php.ini。要做到这一点,你可以简单地检查/比较来自浏览器的phpinfo()和来自cli的php -i的php.ini路径