SQLSTATE[HY000] [1203] User 123 already has more than max_user_connections

Hallo liebes Forum,

ich habe eine private Instanz von Nextcloud bei Webgo laufen.
Doch seit dem Upgrade auf die Version 23.x bekomme ich Fehlermeldungen.
Entweder bei Bilder in einen anderen Ordner kopieren, oder in der Ansicht der Bilder.

Laut Webgo liegt der max_user_connection bei 10
Über Hinweise und Tipps würde ich mich freuen

Der Logfileauszug:

[20-Jun-2022 09:01:09 Europe/Berlin] PHP Fatal error:  Uncaught Doctrine\DBAL\Exception: Failed to connect to the database: An exception occurred in the driver: SQLSTATE[HY000] [1203] User 123 already has more than 'max_user_connections' active connections in /home/www/nextcloud/lib/private/DB/Connection.php:87
Stack trace:
#0 /home/www/nextcloud/3rdparty/doctrine/dbal/src/Connection.php(1519): OC\DB\Connection->connect()
#1 /home/www/nextcloud/3rdparty/doctrine/dbal/src/Connection.php(1041): Doctrine\DBAL\Connection->getWrappedConnection()
#2 /home/www/nextcloud/lib/private/DB/Connection.php(237): Doctrine\DBAL\Connection->executeQuery('SELECT * FROM `...', Array, Array, NULL)
#3 /home/www/nextcloud/3rdparty/doctrine/dbal/src/Query/QueryBuilder.php(345): OC\DB\Connection->executeQuery('SELECT * FROM `...', Array, Array)
#4 /home/www/nextcloud/lib/private/DB/QueryBuilder/QueryBuilder.php(287): Doctrine\DBAL\Query\QueryBuilder->execute()
#5 /home/www/nextcloud/lib/private/AppConfig.php(361): OC\DB\QueryBuilder\QueryBuilder->execute()
#6 /home/www/nextcloud/lib/private/AppConfig.php(126): OC\AppConfig->loadConfigValues()
#7 /home/www/nextcloud/lib/private/AppConfig.php(317): OC\AppConfig->getApps()
#8 /home/www/nextcloud/lib/private/legacy/OC_App.php(982): OC\AppConfig->getValues(false, 'installed_versi...')
#9 /home/www/nextcloud/lib/private/Server.php(692): OC_App::getAppVersions()
#10 /home/www/nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(160): OC\Server->OC\{closure}(Object(OC\Server))
#11 /home/www/nextcloud/3rdparty/pimple/pimple/src/Pimple/Container.php(118): OC\AppFramework\Utility\SimpleContainer->OC\AppFramework\Utility\{closure}(Object(Pimple\Container))
#12 /home/www/nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(127): Pimple\Container->offsetGet('OC\\Memcache\\Fac...')
#13 /home/www/nextcloud/lib/private/ServerContainer.php(136): OC\AppFramework\Utility\SimpleContainer->query('OC\\Memcache\\Fac...', false)
#14 /home/www/nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(56): OC\ServerContainer->query('OC\\Memcache\\Fac...')
#15 /home/www/nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(182): OC\AppFramework\Utility\SimpleContainer->get('OC\\Memcache\\Fac...')
#16 /home/www/nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(160): OC\AppFramework\Utility\SimpleContainer->OC\AppFramework\Utility\{closure}(Object(OC\Server))
#17 /home/www/nextcloud/3rdparty/pimple/pimple/src/Pimple/Container.php(114): OC\AppFramework\Utility\SimpleContainer->OC\AppFramework\Utility\{closure}(Object(Pimple\Container))
#18 /home/www/nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(127): Pimple\Container->offsetGet('OCP\\ICacheFacto...')
#19 /home/www/nextcloud/lib/private/ServerContainer.php(136): OC\AppFramework\Utility\SimpleContainer->query('OCP\\ICacheFacto...', false)
#20 /home/www/nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(87): OC\ServerContainer->query('OCP\\ICacheFacto...', true)
#21 [internal function]: OC\AppFramework\Utility\SimpleContainer->OC\AppFramework\Utility\{closure}(Object(ReflectionParameter))
#22 /home/www/nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(106): array_map(Object(Closure), Array)
#23 /home/www/nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(114): OC\AppFramework\Utility\SimpleContainer->buildClass(Object(ReflectionClass))
#24 /home/www/nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(131): OC\AppFramework\Utility\SimpleContainer->resolve('OC\\User\\Manager')
#25 /home/www/nextcloud/lib/private/ServerContainer.php(161): OC\AppFramework\Utility\SimpleContainer->query('OC\\User\\Manager', true)
#26 /home/www/nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(56): OC\ServerContainer->query('OC\\User\\Manager')
#27 /home/www/nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(182): OC\AppFramework\Utility\SimpleContainer->get('OC\\User\\Manager')
#28 /home/www/nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(160): OC\AppFramework\Utility\SimpleContainer->OC\AppFramework\Utility\{closure}(Object(OC\Server))
#29 /home/www/nextcloud/3rdparty/pimple/pimple/src/Pimple/Container.php(114): OC\AppFramework\Utility\SimpleContainer->OC\AppFramework\Utility\{closure}(Object(Pimple\Container))
#30 /home/www/nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(127): Pimple\Container->offsetGet('OCP\\IUserManage...')
#31 /home/www/nextcloud/lib/private/ServerContainer.php(136): OC\AppFramework\Utility\SimpleContainer->query('OCP\\IUserManage...', false)
#32 /home/www/nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(56): OC\ServerContainer->query('OCP\\IUserManage...')
#33 /home/www/nextcloud/lib/private/Server.php(521): OC\AppFramework\Utility\SimpleContainer->get('OCP\\IUserManage...')
#34 /home/www/nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(160): OC\Server->OC\{closure}(Object(OC\Server))
#35 /home/www/nextcloud/3rdparty/pimple/pimple/src/Pimple/Container.php(118): OC\AppFramework\Utility\SimpleContainer->OC\AppFramework\Utility\{closure}(Object(Pimple\Container))
#36 /home/www/nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(127): Pimple\Container->offsetGet('OC\\User\\Session')
#37 /home/www/nextcloud/lib/private/ServerContainer.php(136): OC\AppFramework\Utility\SimpleContainer->query('OC\\User\\Session', false)
#38 /home/www/nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(56): OC\ServerContainer->query('OC\\User\\Session')
#39 /home/www/nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(182): OC\AppFramework\Utility\SimpleContainer->get('OC\\User\\Session')
#40 /home/www/nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(160): OC\AppFramework\Utility\SimpleContainer->OC\AppFramework\Utility\{closure}(Object(OC\Server))
#41 /home/www/nextcloud/3rdparty/pimple/pimple/src/Pimple/Container.php(114): OC\AppFramework\Utility\SimpleContainer->OC\AppFramework\Utility\{closure}(Object(Pimple\Container))
#42 /home/www/nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(127): Pimple\Container->offsetGet('OCP\\IUserSessio...')
#43 /home/www/nextcloud/lib/private/ServerContainer.php(136): OC\AppFramework\Utility\SimpleContainer->query('OCP\\IUserSessio...', false)
#44 /home/www/nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(56): OC\ServerContainer->query('OCP\\IUserSessio...')
#45 /home/www/nextcloud/lib/private/Server.php(1354): OC\AppFramework\Utility\SimpleContainer->get('OCP\\IUserSessio...')
#46 /home/www/nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(160): OC\Server->OC\{closure}(Object(OC\Server))
#47 /home/www/nextcloud/3rdparty/pimple/pimple/src/Pimple/Container.php(114): OC\AppFramework\Utility\SimpleContainer->OC\AppFramework\Utility\{closure}(Object(Pimple\Container))
#48 /home/www/nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(127): Pimple\Container->offsetGet('OCP\\ISession')
#49 /home/www/nextcloud/lib/private/ServerContainer.php(136): OC\AppFramework\Utility\SimpleContainer->query('OCP\\ISession', false)
#50 /home/www/nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(56): OC\ServerContainer->query('OCP\\ISession')
#51 /home/www/nextcloud/lib/private/Server.php(1237): OC\AppFramework\Utility\SimpleContainer->get('OCP\\ISession')
#52 /home/www/nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(160): OC\Server->OC\{closure}(Object(OC\Server))
#53 /home/www/nextcloud/3rdparty/pimple/pimple/src/Pimple/Container.php(118): OC\AppFramework\Utility\SimpleContainer->OC\AppFramework\Utility\{closure}(Object(Pimple\Container))
#54 /home/www/nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(127): Pimple\Container->offsetGet('OC\\Security\\CSR...')
#55 /home/www/nextcloud/lib/private/ServerContainer.php(136): OC\AppFramework\Utility\SimpleContainer->query('OC\\Security\\CSR...', false)
#56 /home/www/nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(87): OC\ServerContainer->query('OC\\Security\\CSR...', true)
#57 [internal function]: OC\AppFramework\Utility\SimpleContainer->OC\AppFramework\Utility\{closure}(Object(ReflectionParameter))
#58 /home/www/nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(106): array_map(Object(Closure), Array)
#59 /home/www/nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(114): OC\AppFramework\Utility\SimpleContainer->buildClass(Object(ReflectionClass))
#60 /home/www/nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(131): OC\AppFramework\Utility\SimpleContainer->resolve('OC\\Security\\CSR...')
#61 /home/www/nextcloud/lib/private/ServerContainer.php(161): OC\AppFramework\Utility\SimpleContainer->query('OC\\Security\\CSR...', true)
#62 /home/www/nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(56): OC\ServerContainer->query('OC\\Security\\CSR...')
#63 /home/www/nextcloud/lib/private/Server.php(1036): OC\AppFramework\Utility\SimpleContainer->get('OC\\Security\\CSR...')
#64 /home/www/nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(160): OC\Server->OC\{closure}(Object(OC\Server))
#65 /home/www/nextcloud/3rdparty/pimple/pimple/src/Pimple/Container.php(118): OC\AppFramework\Utility\SimpleContainer->OC\AppFramework\Utility\{closure}(Object(Pimple\Container))
#66 /home/www/nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(127): Pimple\Container->offsetGet('OCP\\IRequest')
#67 /home/www/nextcloud/lib/private/ServerContainer.php(136): OC\AppFramework\Utility\SimpleContainer->query('OCP\\IRequest', false)
#68 /home/www/nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(56): OC\ServerContainer->query('OCP\\IRequest')
#69 /home/www/nextcloud/lib/private/Server.php(1520): OC\AppFramework\Utility\SimpleContainer->get('OCP\\IRequest')
#70 /home/www/nextcloud/remote.php(52): OC\Server->getRequest()
#71 /home/www/nextcloud/remote.php(168): handleException(Object(Doctrine\DBAL\Exception))
#72 {main}
  thrown in /home/www/nextcloud/lib/private/DB/Connection.php on line 87
  • Bei welchen Anbieter: Webgo
  • Was für ein Server? shared hosting
    Linux 4.19.0-18-amd64 x86_64
  • Nextcloud Version: 23.0.5

PHP Version: 8.0.17
Arbeitspeicher-Grenzwert: 512 MB
Maximale Ausführungszeit: 3600
Maximale Größe zum Hochladen: 150 MB

Art: mysql
Version: 8.0.22
Größe: 69,9 MB

  • Bei was für einer Aktion ist der Fehler aufgetreten?
    Klick auf Fotos (rund 5.000) nach unten scrollen
    10 Bilder von einem Ordner in einen anderen kopieren

Ich den Fehler habe in meiner privaten Instanz ursprünglich auch gehabt. Aktuzell habe ich

max_connections = 250

Ich kann aber nicht sagen ob das empirisch als gangbares Minimum oder auf gut Glück gesetzt wurde… Eine Suche im Forum kann dir helfen Hintergründe dazu zu finden…

Hi @wwe und vielen Dank für die Rückmeldung.
max_connections - ist das für PHP oder MySQL?

Denn die Connections für die MySQL kann man nicht so ohne weiteres nach oben setzen?!

das ist eine Option von mysql

warum nicht?

…/dev-nextcloud$ cat db-config/my.cnf |grep max_connections
max_connections = 250

Danke :slight_smile:

Bei Webgo kannst du jedoch nur die php.ini und Apache configs ändern, nicht aber die MySQL.

Ich frage mich aber, wie ein Nutzer 10 MySQL Connections braucht…

@Mitches Ich bin auch bei webgo und hab genau dasselbe Problem. Ich hatte generell erst das Problem, dass mein Server allgemein Performance-Probleme hatte und als ich mich beschwert hab, haben sie festgestellt, dass v.a. andere User die DB-Verbindung zu stark auslasten und haben dann max_connections auf 10 gesetzt und jetzt hab ich das Problem auch. Mir ist auch nicht klar, wo diese 10 Verbindungen herkommen.
Wie ist bei Dir der aktuelle Stand? Hast Du das Problem gelöst bekommen, oder umgehen können? Wenn ja, wie? So wie’s jetzt gerade ist, kann ich das auf Dauer nicht lassen. Ich hab bei jedem 3. Zugriff auf meine Cloud Verbindungsprobleme, das ist so nicht nutzbar.

@maccarib
Nein, ich konnte das Problem nicht lösen - ich lade die Seite (da nur Privatgebrauch) entsprechend oft - irgendwann sind alle Bilder da

@wwe

Das geschilderte Problem tritt nicht in der App auf. Die arbeitet wunderbar und dort lassen sich 800 Bilder von einem in den anderen Ordner kopieren. Über die Weboberfläche geht das gerade noch mit 8 Bildern. Es liegt meiner Meinung nach an Nextcloud, die MySQL nicht so zu torpedieren. Hat ja mit einer anderen Version von Nextcloud schon funktioniert und klappt auch in der App…

@Mitches Das liegt nicht primär an den Bildern in meinen Augen. Die Stelle hab ich noch gar nicht angefasst. Ich bekomm die Fehlermeldungen relativ kontextunabhängig über verschiedene Wege, oft einfach auch nur, wenn ich die Seite oder meinen Kalender öffne. Auch ein cronjob läuft sehr zuverlässig in das Problem. Ich glaub, da gehen insgesamt ein paar Sachen nicht vernünftig mit den connections um.