【问题标题】:What PDO driver to use with mariadb?mariadb 使用什么 PDO 驱动程序?
【发布时间】:2014-01-20 19:57:14
【问题描述】:

用mariadb替换mysql后,遇到如下错误:

PHP 致命错误:带有消息的未捕获异常“PDOException” 在 /var/www/inlcude/config.php:5\nStack 中“找不到驱动程序” 跟踪:\n#0 /var/www/inlcude/config.php(5): PDO->__construct('mysql:dbname=my...', 'apache', 'ABCDE...')\n#1 /var/www/html/index(21): 要求('/var/www/inlcude/con...')\n#2 {main}\n 在第 5 行的 /var/www/inlcude/config.php 中抛出

我已经阅读了以下两个相关的问题,但在那里找不到答案:
PDO and MariaDB
PDOException “could not find driver”

yum list pdo_mysqlyum list php5-mysqlyum list php5-mariadb 均不返回匹配包。要在 Fedora 20(红帽)上使用的 mariadb 的 PDO 驱动程序的名称是什么?

补充一句,php-pdo 已经安装好了。

【问题讨论】:

    标签: php mysql pdo mariadb


    【解决方案1】:

    经过反复试验,原来我需要安装mysqlnd才能获得PDO驱动。

    yum install php-mysqlnd
    

    不要问我为什么或如何工作,因为我完全不知道。

    【讨论】:

    • MariaDB 应该是 MySQL 的二进制兼容分支。你不会找到它的特定驱动程序,但 MySQL 应该可以工作。
    • 谢谢,我正在使用更新的 PHP 包寻找我需要的 MySQL 的 PDO 驱动程序,php56u-mysqlnd 正是我需要的
    【解决方案2】:

    MarriaDB 是 mysql 的一个分支。要为其安装 PDO 驱动程序,请安装 php-pdo 和 php-mysql 包

    wget http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-3.noarch.rpm
    wget http://rpms.famillecollet.com/enterprise/remi-release-5.rpm
    rpm -Uvh remi-release-5*.rpm epel-release-5*.rpm
    

    在此之后,您可以从 remi 存储库安装 pdo 和 mysql

    yum --enablerepo=remi install php-pdo
    yum --enablerepo=remi install php-mysql
    

    【讨论】:

      猜你喜欢
      • 2011-11-19
      • 1970-01-01
      • 2012-03-08
      • 2015-02-22
      • 1970-01-01
      • 1970-01-01
      • 2018-03-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多