搜索

首页  >  问答  >  正文

PDOException“找不到驱动程序”

<p>我刚刚安装了带有 Apache、MySQL 和 PHP 的 Debian Lenny,但收到 PDOException <code>无法找到驱动程序</code>。</p> <p>这是它所引用的特定代码行:</p> <p><code>$dbh = new PDO('mysql:host=' .DB_HOST . ';dbname=' .DB_NAME, DB_USER, DB_PASS)</code></p> <p><code>DB_HOST</code>、<code>DB_NAME</code>、<code>DB_USER</code> 和 <code>DB_PASS</code> 是我定义的常量。它在生产服务器(以及我之前的 Ubuntu 服务器设置)上运行良好。</p> <p>这与我的 PHP 安装有关吗?</p> <p>网上搜索没有帮助,我得到的只是专家交流和示例,但没有解决方案。</p>
P粉680000555P粉680000555487 天前576

全部回复(2)我来回复

  • P粉242126786

    P粉2421267862023-08-24 13:03:53

    代码中的 dsn 显示您正在尝试连接 mysql 驱动程序。您的错误消息表明该驱动程序不可用。

    检查您的服务器上是否安装了 mysql 扩展。

    在 Ubuntu/Debian 中,您可以使用以下命令检查软件包:

    dpkg --get-selections | grep php | grep mysql

    如果没有 php5-mysql 软件包,请安装它。

    在 Ubuntu/Debian 中你可以使用:

    • PHP5:sudo apt-get install php5-mysql
    • PHP7:sudo apt-get install php7.0-mysql

    最后,要使其正常工作,您需要重新启动网络服务器:

    • Apache:sudo /etc/init.d/apache2 restart
    • Nginx:sudo /etc/init.d/nginx restart

    回复
    0
  • P粉520545753

    P粉5205457532023-08-24 12:28:32

    您需要有一个名为 pdo_mysql 的模块。在 phpinfo() 中寻找以下内容,

    pdo_mysql
    
    PDO Driver for MySQL, client library version => 5.1.44

    回复
    0
  • 取消回复