Doctrine\DBAL\Driver\PDOException - could not find driver

Permalink
Hi,

I having an issue with one of my sites since I upgraded the server from Ubuntu 16.04LTS to 18.04LTS.
I have two Concrete5 sites one is 8.5.1 which is working fine and another 8.1.0 which is the one that has stopped working. I have tried upgrading the 8.1.0 to 8.5.1 but that had issues so I rolled back.

- I have confirmed that pdo-mysql is installed via php -m and it is there.
- I have configured both sites to use PHP 7.0.33 this made no difference.
- I have checked the mysql login works using the credentials from the database.php and that works.
- I have checked that the database user can do a select done on the database and that works.
- I have confirmed both sites have the same Apache configuration option.
- when I enable debugging, I get the following error output :

Doctrine\DBAL\Driver\PDOException thrown with message "could not find driver"

Stacktrace:
#22 Doctrine\DBAL\Driver\PDOException in /home/troglodyte/public_html/concrete/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php:47
#21 PDOException in /home/troglodyte/public_html/concrete/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php:43
#20 PDO:__construct in /home/troglodyte/public_html/concrete/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php:43
#19 Doctrine\DBAL\Driver\PDOConnection:__construct in /home/troglodyte/public_html/concrete/src/Database/Connection/PDOConnection.php:22
#18 Concrete\Core\Database\Connection\PDOConnection:__construct in /home/troglodyte/public_html/concrete/src/Database/Driver/PDOMySqlConcrete5/Driver.php:21
#17 Concrete\Core\Database\Driver\PDOMySqlConcrete5\Driver:connect in /home/troglodyte/public_html/concrete/vendor/doctrine/dbal/lib/Doctrine/DBAL/Connection.php:360
#16 Doctrine\DBAL\Connection:connect in /home/troglodyte/public_html/concrete/vendor/doctrine/dbal/lib/Doctrine/DBAL/Connection.php:429
#15 Doctrine\DBAL\Connection:getDatabasePlatformVersion in /home/troglodyte/public_html/concrete/vendor/doctrine/dbal/lib/Doctrine/DBAL/Connection.php:389
#14 Doctrine\DBAL\Connection:detectDatabasePlatform in /home/troglodyte/public_html/concrete/vendor/doctrine/dbal/lib/Doctrine/DBAL/Connection.php:328
#13 Doctrine\DBAL\Connection:getDatabasePlatform in /home/troglodyte/public_html/concrete/src/Database/Connection/ConnectionFactory.php:57
#12 Concrete\Core\Database\Connection\ConnectionFactory:createConnection in /home/troglodyte/public_html/concrete/src/Database/Connection/ConnectionFactory.php:71
#11 Concrete\Core\Database\Connection\ConnectionFactory:make in /home/troglodyte/public_html/concrete/src/Database/DatabaseManager.php:185
#10 Concrete\Core\Database\DatabaseManager:makeConnection in /home/troglodyte/public_html/concrete/src/Database/DatabaseManager.php:94
#9 Concrete\Core\Database\DatabaseManager:connection in /home/troglodyte/public_html/concrete/src/Support/Facade/Database.php:26
#8 Concrete\Core\Support\Facade\Database:__callStatic in /home/troglodyte/public_html/concrete/src/Package/PackageList.php:73
#7 Concrete\Core\Package\PackageList:get in /home/troglodyte/public_html/concrete/src/Application/Application.php:202
#6 Concrete\Core\Application\Application:setupPackageAutoloaders in /home/troglodyte/public_html/concrete/src/Foundation/Runtime/Boot/DefaultBooter.php:489
#5 Concrete\Core\Foundation\Runtime\Boot\DefaultBooter:initializePackages in /home/troglodyte/public_html/concrete/src/Foundation/Runtime/Boot/DefaultBooter.php:170
#4 Concrete\Core\Foundation\Runtime\Boot\DefaultBooter:bootHttpSapi in /home/troglodyte/public_html/concrete/src/Foundation/Runtime/Boot/DefaultBooter.php:125
#3 Concrete\Core\Foundation\Runtime\Boot\DefaultBooter:boot in /home/troglodyte/public_html/concrete/src/Foundation/Runtime/DefaultRuntime.php:80
#2 Concrete\Core\Foundation\Runtime\DefaultRuntime:boot in /home/troglodyte/public_html/concrete/bootstrap/start.php:35
#1 require in /home/troglodyte/public_html/concrete/dispatcher.php:27
#0 require in /home/troglodyte/public_html/index.php:3

What have I missed ?
Can any one please advise ?

Thank you.

 
Myq replied on at Permalink Reply
Myq
A bit late to answer this, but if anyone else has this problem, it's because the PDO extension is not enabled in php.ini. You need to un-comment (remove the leading semicolon) or add this line in php.ini:
extension=pdo_mysql