zend框架连接错误:找不到驱动程序pdo mysql

时间:2013-12-24 03:57:36

标签: zend-framework pdo

我有一台机器:

  • centOS 6.5
  • php 5.5.7来自remi repository
  • 来自remi repository的
  • mysql 5.5.35

我想将zend框架2连接到mysql数据库但是我收到以下错误:


发生错误 执行期间发生错误;请稍后再试。 附加信息: 的Zend \ DB \适配器\异常\ RuntimeException的

文件:

/var/www/zf2demo/vendor/zendframework/zendframework/library/Zend/Db/Adapter/Driver/Pdo/Connection.php:289

消息:

Connect Error: could not find driver

根据phpinfo我安装并运行了pdo


启用PDO支持 PDO驱动程序mysql,sqlite

PDO_MYSQL 启用了MySQL的PDO驱动程序 客户端API版本mysqlnd 5.0.11-dev - 20120503 - $ Id:40933630edef551dfaca71298a83fad8d03d62d4 $

指令本地价值主值 pdo_mysql.default_socket /var/lib/mysql/mysql.sock /var/lib/mysql/mysql.sock


我的php.ini文件中已经有扩展名pdo.so和pdo_mysql.so。

我的连接是通过(用户名和密码在其他文件中)完成的:

return array(
'db' => array(
    'driver'         => 'Pdo',
    'dsn'            => 'mysql:dbname=album;host=localhost',
    'driver_options' => array(
        PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES \'UTF8\''
    ),
),
'service_manager' => array(
    'factories' => array(
        'Zend\Db\Adapter\Adapter'
                => 'Zend\Db\Adapter\AdapterServiceFactory',
    ),
),

);

有什么不对?

1 个答案:

答案 0 :(得分:1)

我在使用Zend和PHP 5.4的CentOS版本6.4中遇到了类似的问题。 PDO出现在phpinfo()中,但在与数据库相关的所有页面上都提到错误(“找不到驱动程序”)。 PHP 5.4包括php-common等软件包,之前的pdo软件包是从alteumtive yum / rpm存储库中获得的。也许您当前的PDO包也失败了。

最后,在我的情况下,解决方案是安装其他php-pdo包(php54w-pdo.x86_64)。

#yum install php54w-pdo.x86_64

我想你应该安装php55w-pdo.x86_64

#yum install php55w-pdo.x86_64

不要忘记重启Apache!