【问题标题】:'CDbConnection failed to open the DB connection: could not find driver' while trying to generate a model class“CDbConnection 无法打开数据库连接:找不到驱动程序”,同时尝试生成模型类
【发布时间】:2015-03-23 12:41:45
【问题描述】:

当我在 yiic shell 中运行命令时

模型用户 ygs_users

我收到以下错误

异常“CDbException”,消息“CDbConnection 无法打开” 数据库连接:找不到驱动程序 C:\WebServers\home\localhost\www\yii-1.1.16.bca 042\framework\db\CDbConnection.php:399

之前我在进入 yiic shell 时收到了这样的警告

PHP 警告:PHP 启动:无法加载动态库 '/usr/local/php5/ext\p hp_gd2.dll' - ═х эрщфхэ єърчрээ√щ ьюфєы№。在 第 0 行未知 PHP 警告:PHP 启动:无法加载动态 库 '/usr/local/php5/ext\p hp_mbstring.dll' - ═х эрщфхэ єърчрээ√щ ьюфєы№。在第 0 行的未知中 PHP 警告:PHP 启动:无法 加载动态库 '/usr/local/php5/ext\p hp_mysql.dll' - ═х эрщфхэ єърчрээ√щьюфєы№。在第 0 行的未知中 PHP 警告:PHP 启动: 无法加载动态库 '/usr/local/php5/ext\p hp_mysqli.dll' - ═х эрщфхэ єърчрээ√щ ьюфєы№。在第 0 行的未知中 PHP 警告:PHP 启动:无法加载动态库 '/usr/local/php5/ext\p hp_pdo_mysql.dll' - ═х эрщфхэ єърчрээ√щ ьюфєы№。在第 0 行的未知中

我已经在 php.ini 中指定了扩展的绝对路径,并且警告消失了。我还在 php.ini 中插入了一行“PDO support = enabled”。 但错误“CDbException”保持不变。

我的数据库.php

return array( //'connectionString' => 'sqlite:'.dirname(FILE).'/../data/testdrive.db', // 取消注释 以下行使用 MySQL 数据库 'connectionString' => 'mysql:host=localhost;dbname=testdrive', 'emulatePrepare' => true, 'username' => 'root', 'password' => '', 'charset' => 'utf8', );

我正在使用 yii-1.1.16。

【问题讨论】:

  • 首先运行 phpinfo();查看 PDO 驱动程序是否为 mysql 启用?在 php.ini 中设置“PDO 支持 = 启用”后。重启你的服务器
  • 原来问题已经解决了。我在设置 'PDO support = enabled' 后重新启动了服务器,但更改不会立即生效。现在一切正常。

标签: php mysql yii


【解决方案1】:

在使用 Yii 4 1/2 年后,我被抓了 10 分钟......我不小心在 mysql 密码中包含了一个“£”(UKP 符号),所以一切都可以从“mysql -u blah -p db “但 Yii 无法连接。

如果您对这个错误感到头疼,请检查您的 p/w 中没有任何愚蠢的东西。

【讨论】:

    猜你喜欢
    • 2014-05-22
    • 2014-08-24
    • 1970-01-01
    • 2016-12-07
    • 2014-06-06
    • 1970-01-01
    • 2017-02-28
    • 1970-01-01
    • 2017-07-27
    相关资源
    最近更新 更多