PDOException "Driver not found"
P粉680000555
P粉680000555 2023-08-23 14:42:38
0
2
468

I just installed Debian Lenny with Apache, MySQL and PHP and I get a PDOException Unable to find driver.

This is the specific line of code it refers to:

$dbh = new PDO('mysql:host=' .DB_HOST . ';dbname=' .DB_NAME, DB_USER, DB_PASS)

DB_HOST, DB_NAME, DB_USER and DB_PASS are constants I defined. It works fine on a production server (as well as my previous Ubuntu server setup).

Is this related to my PHP installation?

Searching online didn't help, all I got were expert talks and examples, but no solutions.

P粉680000555
P粉680000555

reply all (2)
P粉242126786

The dsn in the code shows that you are trying to connect to the mysql driver. Your error message indicates that the driver is not available.

Check whether the mysql extension is installed on your server.

In Ubuntu/Debian, you can check the package using the following command:

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

If there is no php5-mysql package, please install it.

In Ubuntu/Debian you can use:

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

Finally, to make it work, you need to restart the web server:

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

    You need to have a module called pdo_mysql. Look for the following in phpinfo(),

    pdo_mysql PDO Driver for MySQL, client library version => 5.1.44
      Latest Downloads
      More>
      Web Effects
      Website Source Code
      Website Materials
      Front End Template
      About us Disclaimer Sitemap
      php.cn:Public welfare online PHP training,Help PHP learners grow quickly!