当试图在Yii框架中连接mysql时,它显示
“CDbConnection无法打开数据库连接:找不到驱动程序“错误
php代码:
'db'=>array(
'class' => 'CDbConnection',
'connectionString' => 'mysql:host=localhost:3306;dbname=testdrive',
'emulatePrepare' => true,
'username' => 'root',
'password' => 'root',
'charset' => 'utf8',
),
我的php驱动程序已经启用,但它显示相同的错误
我正在使用zend studio,zend服务器
我该怎么补救呢?
8条答案
按热度按时间drkbr07n1#
我正在使用Linux Mint..在我的情况下,我需要
因为我正在将我的环境从Lampp迁移到Apache + PHP + MySQL,并且我不得不在php.ini中更改很多内容,
unhi4e5o2#
您应该检查的事项
首先,您应该检查phpinfo()以查找已安装的pdo_drivers。
如果你使用IIS服务器,你应该检查是否安装了php扩展。
检查php.ini中是否正确给出了extensions_dir
检查你的文件夹是否包含pdo_mysql dll
有时候这个问题可能是由于zend服务器的安装造成的。你应该检查一下zend服务器是否正确使用了php扩展
之后,使用以下函数检查简单的php-mysql连接
如果它的工作,然后去与Yii,Slim,Zend的php-mysql连接
4jb9z9bj3#
尝试在Ubuntu中使用以下命令安装
Sqlite
驱动程序现在,使用以下命令重新启动Apache服务器
这两个步骤解决了我的问题。希望它也能解决其他人的问题。
yx2lnoni4#
我用的是Linux Ubuntu。
我有同样的问题,但在我的情况下,我必须安装php-mysql。
sudo apt-get install php5-mysql
并重新启动服务
我希望这能帮助到一些人
km0tfn4u5#
在我的例子中,我还必须启用pdo_sqlite模块,这解决了问题。它是在一个HOSTiq.com.ua主机上。我想它可以保存一些人几个小时的搜索。
nc1teljy6#
我的解决方案是这样的:
如果未设置connectionID,则数据库缓存默认为/protected/data目录中的mysqli数据库,如果系统上未安装mysqli驱动程序,则无法访问该目录(专用服务器、DO droplet、xampp/wamp等的常见问题)
或者,您可以禁用数据库缓存并启用fileCache。
hgb9j2n67#
在当前版本的Yii中,您有一个目录requirements。它会启动Yii Requirement Checker,并显示您缺少了什么。
然后在main.php中获取连接字符串
在我的情况下,这是非常愚蠢的事情。我忘记了**mysql:**在
6qqygrtg8#
如果你不能得到它只有这个
你可以试试这个
我发现谷歌搜索是唯一对我有用的方法