8/28/2019

Could Not Find Driver Php

Active2 months ago
  1. Could Not Find Driver Sqlsrv Php
  2. Php Pdoexception Could Not Find Driver
  3. Could Not Find Driver Php Windows
  4. Could Not Find Driver Php Odbc
  5. Windows Could Not Find Driver
Could

I'm trying to connect with PostgreSQL database through Laravel in order to do a php artisan migrate but doesn't seem to be directed since it's reading the database name of MySQL.

How to fix Error could not find driver -PDO EXCEPTION XAMPP. The above tutorial show you how to fix Error could not find driver -PDO EXCEPTION.You can also t. To check if the PDO PostgreSQL driver is enabled, you open the php.ini file and check if the following line is un-commented. Could not find driver.

Here are the commands from database.php:

If I remove the MySQL paths I'll get:

EDIT:When trying to do php artisan migrate I get a 'PDOException: could not find driver'. I'm using WAMP and I'm in Win8.1. Using PostgreSQL as database.EDIT:Have experimented a series of alternative solutions but I'm still ought to get this solved.The php.ini file was checked in Apache, WAMP (from php folder) and PostgreSQL. The extension_dir is correct as it being ->extension_dir = 'c:/wamp/bin/php/php5.5.12/ext/'

The extension=pdo_pgsql.dll and extension=pgsql.dll are uncommented.

Done the PATH trick in the 'System Variables' and rebooted. No chance.

Thanks for the help so far.

These are my drivers php_pdo_driver.h & php_pdo.h from C:Program Files (x86)PostgreSQLEnterpriseDB-ApachePHPphpSDKincludeextpdo

Information from phpinfo:

PHP Version 5.5.12

Compiler MSVC11 (Visual C++ 2012) Configure Command cscript /nologo configure.js '--enable-snapshot-build' '--disable-isapi' '--enable-debug-pack' '--without-mssql' '--without-pdo-mssql' '--without-pi3web' '--with-pdo-oci=C:php-sdkoraclex64instantclient10sdk,shared' '--with-oci8=C:php-sdkoraclex64instantclient10sdk,shared' '--with-oci8-11g=C:php-sdkoraclex64instantclient11sdk,shared' '--enable-object-out-dir=./obj/' '--enable-com-dotnet=shared' '--with-mcrypt=static' '--disable-static-analyze' '--with-pgo'

vbence
16.1k8 gold badges57 silver badges102 bronze badges
HyperionHyperion
3532 gold badges4 silver badges10 bronze badges

19 Answers

Be sure to configure the 'default' key in app/config/database.php

For postgres, this would be 'default' => 'postgres',

If you are receiving a [PDOException] could not find driver error, check to see if you have the correct PHP extensions installed. You need pdo_pgsql.so and pgsql.so installed and enabled. Instructions on how to do this vary between operating systems.

For Windows, the pgsql extensions should come pre-downloaded with the official PHP distribution. Just edit your php.ini and uncomment the lines extension=pdo_pgsql.so and extension=pgsql.so

Also, in php.ini, make sure extension_dir is set to the proper directory. It should be a folder called extensions or ext or similar inside your PHP install directory.

Finally, copy libpq.dll from C:wampbinphpphp5.* into C:wampbinapache*bin and restart all services through the WampServer interface.

If you still get the exception, you may need to add the postgres bin directory to your PATH:

  1. System Properties -> Advanced tab -> Environment Variables
  2. In 'System variables' group on lower half of window, scroll through and find the PATH entry.
  3. Select it and click Edit
  4. At the end of the existing entry, put the full path to your postgres bin directory. The bin folder should be located in the root of your postgres installation directory.
  5. Restart any open command prompts, or to be certain, restart your computer.

This should hopefully resolve any problems. For more information see:

Siavosh
1,1424 gold badges16 silver badges42 bronze badges
laincelinelainceline

For PDOException: could not find driver for MySQL, and if it is Debian based OS,

Nasif Md. TanjimNasif Md. Tanjim
1,9114 gold badges19 silver badges32 bronze badges

For PHP 7 in Ubuntu you can also do:

So, now you can do not uncomment lines in php.ini

UPD:I have a same error, so problem was not in driver.I changed my database.ini, but every time I saw an error.And I change database config in .env and errors gone.

Святослав ПавленкоСвятослав Павленко

This worked for me:

$ sudo apt-get install php-gd php-mysql

Lucky Lucky

I realize this is an old question but I found it in a Google search so I'm going to go ahead and answer just in case someone else runs across this. I'm on a Mac and had the same issue, but solved it by using HomeBrew. Once you've got it installed, you can just run this command:

And replace the 56 with whatever version of PHP you're using without the decimal point.

Billy BrawnerBilly Brawner

I had the same issue. This is what worked for me.

There are 2 php.ini files:

  • C:wampbinapacheapache2.4.9bin
  • C:wampbinphpphp5.5.12

NOTE: This is using my version of PHP and Apache, change to what yours are.

The php.ini file located in the both folders is what you need to update, the extentions:

  • extension=php_pdo_pgsql.dll
  • extension=php_pgsql.dll

These are what you need to uncomment (remove the ; symbol).

Restart both Wamp and the Command Prompt.

Hopefully it will work for you :).

user3293860user3293860
Sujal PatelSujal Patel
1,9021 gold badge12 silver badges31 bronze badges

For those wanting to use Postgresql on OpenSuse (and co), try the following:

nemesisfixxnemesisfixx
7,2616 gold badges47 silver badges53 bronze badges

Solved after 3 hours.. I am using WAMP (PHP 7.2.4), PostgreSQL 10, Laravel 5.6.29. Loaded PHP extensions (pgsql, pdo_pgsql) from Wampserver 3.3, then I was able to connect to the PostgreSQL server with a simple php testcode from the www directory. But $ php artisan migrate still returned

PDOException::('could not find driver')

I checked the shell (git bash for windows) with $ php --ini, that returned C:wamp64binphpphp7.2.4php.ini instead of c:wamp64binapacheapache2.4.33binphp.ini, loaded by WAMPSo you have to uncomment pgsql and pdo_pgsql extensions also in C:wamp64binphpphp7.2.4php.ini, and then migrate will work ..

Primary Data Provided ByCopyright © 2000-2019. All star mvps.

Jozsa-Csiki Lorant CsabaJozsa-Csiki Lorant Csaba

In Windows 8 PC with Laragon 3.4.0 180809, I faced the same issue. It happened in my case because I updated Laragon and it added a new version of PHP. So in laragon/bin/php/ I actually had two directories:

  • php-7.1.20-Win32-VC14-x64
  • php-7.1.7-Win32-VC14-x64

I added 7.1.20 into my PATH variable. But in my Command Console, running php --ini was showing that the path actually was fetching from the older one: php-7.1.7-Win32-VC14-x64. So I deleted the old one (for safety, I put it in Recycle Bin). But Laragon failed to start after that.

So, in laragaon/etc/apache2/mod_php.conf, I changed the path to the latest PHP version. Then restarted Laragon and the issue is resolved. 😊

Reference: How to add another PHP version - Laragon Forum

Mayeenul IslamMayeenul Islam
1,8504 gold badges28 silver badges73 bronze badges

I got this problem too. I have solved this issue already. If u are using Wamp then perform the following steps.

  1. Go to wamp64/www/bin/php/php* (where * is the php version you are using)
  2. Edit file php and uncomment this line by removing the semicolon:
  1. Save and restart your Wamp server

If it does not work, please check your .env and config/database again.

kano

Could Not Find Driver Sqlsrv Php

3,3231 gold badge18 silver badges30 bronze badges
Phantih Phantih

I had the same error on PHP 7.3.7 docker with laravel:

This works for me

This will install the pgsql and pdo_pgsql drivers.

Now run this command to uncomment the lines extension=pdo_pgsql.so and extension=pgsql.so from php.ini

AshAsh

Old thread I know, but I lost a couple of hours of my life with this. You also need to set the DB info in the .env file. You don't have to specify the driver here because the default specified in database.php is used (I think). I was struggling because it had DB_CONNECTION=mysql in the .env file and I was using pgsql.

Mark DMark D

In my case, I had two versions of PHP installed. So all I had to do was use

Php Pdoexception Could Not Find Driver

$ /opt/lampp/bin/php artisan serve instead of

$ php artisan serve

TejasTejas

I was on shared hosting and there I had to enable all the pdo

Black MambaBlack Mamba
4,1772 gold badges33 silver badges53 bronze badges

sudo apt-get -y install php*-mysql ( just run this command )

Al Imrun ShowrovAl Imrun Showrov

This worked for me:

I am working with 32bit Ubuntu 14

SiHa
3,8786 gold badges19 silver badges34 bronze badges
GloBEGloBE

I see you are using Windows. I was not able to fix this with enabling any of the extensions that come with my Windows WAMP Server. I tried PDO_ODBC and others and even found the Microsoft Official PDO_SQLSRV.

The solution for me was to install the PDO_SQLSRV drivers from a 3rd party website. I found the drivers through http://robsphp.blogspot.nl/2012/06/unofficial-microsoft-sql-server-driver.html

I usually don't use DLLs from random websites, but I was desperate and this worked for me. Hoping it might save others numerous hours of frustration.

Could Not Find Driver Php Windows

halfer
15.3k7 gold badges63 silver badges129 bronze badges
NeoNeo
8,3512 gold badges61 silver badges71 bronze badges

Could Not Find Driver Php Odbc

Using Laravel V 5.5.39 with Php 7.1.12 is working fine, but later (newer) php versions cause the problem. So, change Php version and you will get the solution 100% .

Hashmat WaziriHashmat Waziri

Windows Could Not Find Driver

Not the answer you're looking for? Browse other questions tagged phpdatabasepostgresqllaravelsyntax-error or ask your own question.