Doctrine\DBAL\Exception - could not find driver

An unhandled exception has been thrown:
Doctrine\DBAL\Exception: Failed to connect to the database: An exception occurred in the driver: could not find driver in /www/wwwroot/nextcloud/lib/private/DB/Connection.php:140

Nextcloud version: 27.1.3.2
Operating system and version: Debian 12
Apache or nginx version: Nginx 1.21.4
PHP version (eg, 7.4): 8.2

The issue you are facing:

Is this the first time you’ve seen this error? Y:

Steps to replicate it:

  1. server completely borked on me
  2. downloaded 27.x.x for next cloud
  3. pointed to DB backup (21.x.x)
  4. NC said it needed to run updated on apps
  5. I ran ./occ updated from terminal
  6. received the above error message

The output of your Nextcloud log in Admin > Logging: Can’t access admin center with current error. The below is from my console output:

An unhandled exception has been thrown:
Doctrine\DBAL\Exception: Failed to connect to the database: An exception occurred in the driver: could not find driver in /www/wwwroot/_nextcloud/lib/private/DB/Connection.php:140
Stack trace:
#0 /www/wwwroot/_nextcloud/3rdparty/doctrine/dbal/src/Connection.php(1531): OC\DB\Connection->connect()
#1 /www/wwwroot/_nextcloud/3rdparty/doctrine/dbal/src/Connection.php(1029): Doctrine\DBAL\Connection->getWrappedConnection()
#2 /www/wwwroot/_nextcloud/lib/private/DB/Connection.php(262): Doctrine\DBAL\Connection->executeQuery()
#3 /www/wwwroot/_nextcloud/3rdparty/doctrine/dbal/src/Query/QueryBuilder.php(345): OC\DB\Connection->executeQuery()
#4 /www/wwwroot/_nextcloud/lib/private/DB/QueryBuilder/QueryBuilder.php(280): Doctrine\DBAL\Query\QueryBuilder->execute()
#5 /www/wwwroot/_nextcloud/lib/private/AppConfig.php(418): OC\DB\QueryBuilder\QueryBuilder->execute()
#6 /www/wwwroot/_nextcloud/lib/private/AppConfig.php(184): OC\AppConfig->loadConfigValues()
#7 /www/wwwroot/_nextcloud/lib/private/AppConfig.php(374): OC\AppConfig->getApps()
#8 /www/wwwroot/_nextcloud/lib/private/legacy/OC_App.php(803): OC\AppConfig->getValues()
#9 /www/wwwroot/_nextcloud/lib/private/Server.php(736): OC_App::getAppVersions()
#10 /www/wwwroot/_nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(171): OC\Server->OC\{closure}()
#11 /www/wwwroot/_nextcloud/3rdparty/pimple/pimple/src/Pimple/Container.php(122): OC\AppFramework\Utility\SimpleContainer->OC\AppFramework\Utility\{closure}()
#12 /www/wwwroot/_nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(138): Pimple\Container->offsetGet()
#13 /www/wwwroot/_nextcloud/lib/private/ServerContainer.php(171): OC\AppFramework\Utility\SimpleContainer->query()
#14 /www/wwwroot/_nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(65): OC\ServerContainer->query()
#15 /www/wwwroot/_nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(193): OC\AppFramework\Utility\SimpleContainer->get()
#16 /www/wwwroot/_nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(171): OC\AppFramework\Utility\SimpleContainer->OC\AppFramework\Utility\{closure}()
#17 /www/wwwroot/_nextcloud/3rdparty/pimple/pimple/src/Pimple/Container.php(118): OC\AppFramework\Utility\SimpleContainer->OC\AppFramework\Utility\{closure}()
#18 /www/wwwroot/_nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(138): Pimple\Container->offsetGet()
#19 /www/wwwroot/_nextcloud/lib/private/ServerContainer.php(171): OC\AppFramework\Utility\SimpleContainer->query()
#20 /www/wwwroot/_nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(65): OC\ServerContainer->query()
#21 /www/wwwroot/_nextcloud/lib/private/Server.php(1130): OC\AppFramework\Utility\SimpleContainer->get()
#22 /www/wwwroot/_nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(171): OC\Server->OC\{closure}()
#23 /www/wwwroot/_nextcloud/3rdparty/pimple/pimple/src/Pimple/Container.php(122): OC\AppFramework\Utility\SimpleContainer->OC\AppFramework\Utility\{closure}()
#24 /www/wwwroot/_nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(138): Pimple\Container->offsetGet()
#25 /www/wwwroot/_nextcloud/lib/private/ServerContainer.php(171): OC\AppFramework\Utility\SimpleContainer->query()
#26 /www/wwwroot/_nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(65): OC\ServerContainer->query()
#27 /www/wwwroot/_nextcloud/lib/private/Server.php(2088): OC\AppFramework\Utility\SimpleContainer->get()
#28 /www/wwwroot/_nextcloud/lib/private/Files/View.php(107): OC\Server->getLockingProvider()
#29 /www/wwwroot/_nextcloud/lib/private/Server.php(470): OC\Files\View->__construct()
#30 /www/wwwroot/_nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(171): OC\Server->OC\{closure}()
#31 /www/wwwroot/_nextcloud/3rdparty/pimple/pimple/src/Pimple/Container.php(122): OC\AppFramework\Utility\SimpleContainer->OC\AppFramework\Utility\{closure}()
#32 /www/wwwroot/_nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(138): Pimple\Container->offsetGet()
#33 /www/wwwroot/_nextcloud/lib/private/ServerContainer.php(171): OC\AppFramework\Utility\SimpleContainer->query()
#34 /www/wwwroot/_nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(65): OC\ServerContainer->query()
#35 /www/wwwroot/_nextcloud/lib/private/Server.php(1490): OC\AppFramework\Utility\SimpleContainer->get()
#36 /www/wwwroot/_nextcloud/lib/base.php(635): OC\Server->boot()
#37 /www/wwwroot/_nextcloud/lib/base.php(1196): OC::init()
#38 /www/wwwroot/_nextcloud/console.php(48): require_once('...')
#39 /www/wwwroot/_nextcloud/occ(11): require_once('...')

The output of your config.php file in /path/to/nextcloud (make sure you remove any identifiable information!):

  'datadirectory' => '/www/wwwroot/_nextcloud/data',
  'dbtype' => 'mysql',
  'version' => '27.1.3.2',
  'overwrite.cli.url' => 'https://domain.com',
  'dbname' => 'redacted',
  'dbhost' => 'localhost',
  'dbport' => '',
  'dbtableprefix' => 'oc_',
  'mysql.utf8mb4' => true,
  'dbuser' => 'redacted',
  'dbpassword' => 'redacted',
  'installed' => true,
  'theme' => '',

Install the php module for the database you are using. So for example if you are using mysql you would apt install php8.2-mysql . You probably upgraded php and did not install all the needed packages.

So, I ended up rolling back to a previous version, and then reinstalled. Seemed to clear stuff up.

This topic was automatically closed 8 days after the last reply. New replies are no longer allowed.