I suspected a failed migration/upgrade, so attempted to run occ maintenance:repair
and got the following:
root@umbrel:~# sudo docker exec -u www-data -it nextcloud_web_1 php occ maintenance:repair
An unhandled exception has been thrown:
PDOException: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'nextcloud.oc_appconfig' doesn't exist in /var/www/html/3rdparty/doctrine/dbal/src/Driver/PDO/Statement.php:130
Stack trace:
#0 /var/www/html/3rdparty/doctrine/dbal/src/Driver/PDO/Statement.php(130): PDOStatement->execute(NULL)
#1 /var/www/html/3rdparty/doctrine/dbal/src/Connection.php(1104): Doctrine\DBAL\Driver\PDO\Statement->execute()
#2 /var/www/html/lib/private/DB/Connection.php(419): Doctrine\DBAL\Connection->executeQuery('SELECT `appid`,...', Array, Array, NULL)
#3 /var/www/html/lib/private/DB/ConnectionAdapter.php(50): OC\DB\Connection->executeQuery('SELECT `appid`,...', Array, Array)
#4 /var/www/html/lib/private/DB/QueryBuilder/QueryBuilder.php(289): OC\DB\ConnectionAdapter->executeQuery('SELECT `appid`,...', Array, Array)
#5 /var/www/html/lib/private/AppConfig.php(1233): OC\DB\QueryBuilder\QueryBuilder->executeQuery()
#6 /var/www/html/lib/private/AppConfig.php(243): OC\AppConfig->loadConfig(NULL, false)
#7 /var/www/html/lib/private/legacy/OC_App.php(653): OC\AppConfig->searchValues('installed_versi...')
#8 /var/www/html/lib/private/Server.php(612): OC_App::getAppVersions()
#9 /var/www/html/lib/private/Memcache/Factory.php(112): OC\Server->OC\{closure}()
#10 /var/www/html/lib/private/Memcache/Factory.php(124): OC\Memcache\Factory->getGlobalPrefix()
#11 /var/www/html/lib/private/Server.php(968): OC\Memcache\Factory->createLocking('lock')
#12 /var/www/html/lib/private/AppFramework/Utility/SimpleContainer.php(153): OC\Server->OC\{closure}(Object(OC\Server))
#13 /var/www/html/3rdparty/pimple/pimple/src/Pimple/Container.php(122): OC\AppFramework\Utility\SimpleContainer->OC\AppFramework\Utility\{closure}(Object(Pimple\Container))
#14 /var/www/html/lib/private/AppFramework/Utility/SimpleContainer.php(120): Pimple\Container->offsetGet('OCP\\Lock\\ILocki...')
#15 /var/www/html/lib/private/ServerContainer.php(155): OC\AppFramework\Utility\SimpleContainer->query('OCP\\Lock\\ILocki...', true)
#16 /var/www/html/lib/private/AppFramework/Utility/SimpleContainer.php(42): OC\ServerContainer->query('OCP\\Lock\\ILocki...')
#17 /var/www/html/lib/private/Files/View.php(74): OC\AppFramework\Utility\SimpleContainer->get('OCP\\Lock\\ILocki...')
#18 /var/www/html/lib/private/Server.php(422): OC\Files\View->__construct()
#19 /var/www/html/lib/private/AppFramework/Utility/SimpleContainer.php(153): OC\Server->OC\{closure}(Object(OC\Server))
#20 /var/www/html/3rdparty/pimple/pimple/src/Pimple/Container.php(122): OC\AppFramework\Utility\SimpleContainer->OC\AppFramework\Utility\{closure}(Object(Pimple\Container))
#21 /var/www/html/lib/private/AppFramework/Utility/SimpleContainer.php(120): Pimple\Container->offsetGet('OC\\Files\\Node\\H...')
#22 /var/www/html/lib/private/ServerContainer.php(155): OC\AppFramework\Utility\SimpleContainer->query('OC\\Files\\Node\\H...', true)
#23 /var/www/html/lib/private/AppFramework/Utility/SimpleContainer.php(42): OC\ServerContainer->query('OC\\Files\\Node\\H...')
#24 /var/www/html/lib/private/Server.php(1303): OC\AppFramework\Utility\SimpleContainer->get('OC\\Files\\Node\\H...')
#25 /var/www/html/lib/base.php(634): OC\Server->boot()
#26 /var/www/html/lib/base.php(1156): OC::init()
#27 /var/www/html/console.php(28): require_once('/var/www/html/l...')
#28 /var/www/html/occ(33): require_once('/var/www/html/c...')
#29 {main}
Next Doctrine\DBAL\Driver\PDO\Exception: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'nextcloud.oc_appconfig' doesn't exist in /var/www/html/3rdparty/doctrine/dbal/src/Driver/PDO/Exception.php:24
Stack trace:
#0 /var/www/html/3rdparty/doctrine/dbal/src/Driver/PDO/Statement.php(132): Doctrine\DBAL\Driver\PDO\Exception::new(Object(PDOException))
#1 /var/www/html/3rdparty/doctrine/dbal/src/Connection.php(1104): Doctrine\DBAL\Driver\PDO\Statement->execute()
#2 /var/www/html/lib/private/DB/Connection.php(419): Doctrine\DBAL\Connection->executeQuery('SELECT `appid`,...', Array, Array, NULL)
#3 /var/www/html/lib/private/DB/ConnectionAdapter.php(50): OC\DB\Connection->executeQuery('SELECT `appid`,...', Array, Array)
#4 /var/www/html/lib/private/DB/QueryBuilder/QueryBuilder.php(289): OC\DB\ConnectionAdapter->executeQuery('SELECT `appid`,...', Array, Array)
#5 /var/www/html/lib/private/AppConfig.php(1233): OC\DB\QueryBuilder\QueryBuilder->executeQuery()
#6 /var/www/html/lib/private/AppConfig.php(243): OC\AppConfig->loadConfig(NULL, false)
#7 /var/www/html/lib/private/legacy/OC_App.php(653): OC\AppConfig->searchValues('installed_versi...')
#8 /var/www/html/lib/private/Server.php(612): OC_App::getAppVersions()
#9 /var/www/html/lib/private/Memcache/Factory.php(112): OC\Server->OC\{closure}()
#10 /var/www/html/lib/private/Memcache/Factory.php(124): OC\Memcache\Factory->getGlobalPrefix()
#11 /var/www/html/lib/private/Server.php(968): OC\Memcache\Factory->createLocking('lock')
#12 /var/www/html/lib/private/AppFramework/Utility/SimpleContainer.php(153): OC\Server->OC\{closure}(Object(OC\Server))
#13 /var/www/html/3rdparty/pimple/pimple/src/Pimple/Container.php(122): OC\AppFramework\Utility\SimpleContainer->OC\AppFramework\Utility\{closure}(Object(Pimple\Container))
#14 /var/www/html/lib/private/AppFramework/Utility/SimpleContainer.php(120): Pimple\Container->offsetGet('OCP\\Lock\\ILocki...')
#15 /var/www/html/lib/private/ServerContainer.php(155): OC\AppFramework\Utility\SimpleContainer->query('OCP\\Lock\\ILocki...', true)
#16 /var/www/html/lib/private/AppFramework/Utility/SimpleContainer.php(42): OC\ServerContainer->query('OCP\\Lock\\ILocki...')
#17 /var/www/html/lib/private/Files/View.php(74): OC\AppFramework\Utility\SimpleContainer->get('OCP\\Lock\\ILocki...')
#18 /var/www/html/lib/private/Server.php(422): OC\Files\View->__construct()
#19 /var/www/html/lib/private/AppFramework/Utility/SimpleContainer.php(153): OC\Server->OC\{closure}(Object(OC\Server))
#20 /var/www/html/3rdparty/pimple/pimple/src/Pimple/Container.php(122): OC\AppFramework\Utility\SimpleContainer->OC\AppFramework\Utility\{closure}(Object(Pimple\Container))
#21 /var/www/html/lib/private/AppFramework/Utility/SimpleContainer.php(120): Pimple\Container->offsetGet('OC\\Files\\Node\\H...')
#22 /var/www/html/lib/private/ServerContainer.php(155): OC\AppFramework\Utility\SimpleContainer->query('OC\\Files\\Node\\H...', true)
#23 /var/www/html/lib/private/AppFramework/Utility/SimpleContainer.php(42): OC\ServerContainer->query('OC\\Files\\Node\\H...')
#24 /var/www/html/lib/private/Server.php(1303): OC\AppFramework\Utility\SimpleContainer->get('OC\\Files\\Node\\H...')
#25 /var/www/html/lib/base.php(634): OC\Server->boot()
#26 /var/www/html/lib/base.php(1156): OC::init()
#27 /var/www/html/console.php(28): require_once('/var/www/html/l...')
#28 /var/www/html/occ(33): require_once('/var/www/html/c...')
#29 {main}
Next Doctrine\DBAL\Exception\TableNotFoundException: An exception occurred while executing a query: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'nextcloud.oc_appconfig' doesn't exist in /var/www/html/3rdparty/doctrine/dbal/src/Driver/API/MySQL/ExceptionConverter.php:49
Stack trace:
#0 /var/www/html/3rdparty/doctrine/dbal/src/Connection.php(1976): Doctrine\DBAL\Driver\API\MySQL\ExceptionConverter->convert(Object(Doctrine\DBAL\Driver\PDO\Exception), Object(Doctrine\DBAL\Query))
#1 /var/www/html/3rdparty/doctrine/dbal/src/Connection.php(1918): Doctrine\DBAL\Connection->handleDriverException(Object(Doctrine\DBAL\Driver\PDO\Exception), Object(Doctrine\DBAL\Query))
#2 /var/www/html/3rdparty/doctrine/dbal/src/Connection.php(1111): Doctrine\DBAL\Connection->convertExceptionDuringQuery(Object(Doctrine\DBAL\Driver\PDO\Exception), 'SELECT `appid`,...', Array, Array)
#3 /var/www/html/lib/private/DB/Connection.php(419): Doctrine\DBAL\Connection->executeQuery('SELECT `appid`,...', Array, Array, NULL)
#4 /var/www/html/lib/private/DB/ConnectionAdapter.php(50): OC\DB\Connection->executeQuery('SELECT `appid`,...', Array, Array)
#5 /var/www/html/lib/private/DB/QueryBuilder/QueryBuilder.php(289): OC\DB\ConnectionAdapter->executeQuery('SELECT `appid`,...', Array, Array)
#6 /var/www/html/lib/private/AppConfig.php(1233): OC\DB\QueryBuilder\QueryBuilder->executeQuery()
#7 /var/www/html/lib/private/AppConfig.php(243): OC\AppConfig->loadConfig(NULL, false)
#8 /var/www/html/lib/private/legacy/OC_App.php(653): OC\AppConfig->searchValues('installed_versi...')
#9 /var/www/html/lib/private/Server.php(612): OC_App::getAppVersions()
#10 /var/www/html/lib/private/Memcache/Factory.php(112): OC\Server->OC\{closure}()
#11 /var/www/html/lib/private/Memcache/Factory.php(124): OC\Memcache\Factory->getGlobalPrefix()
#12 /var/www/html/lib/private/Server.php(968): OC\Memcache\Factory->createLocking('lock')
#13 /var/www/html/lib/private/AppFramework/Utility/SimpleContainer.php(153): OC\Server->OC\{closure}(Object(OC\Server))
#14 /var/www/html/3rdparty/pimple/pimple/src/Pimple/Container.php(122): OC\AppFramework\Utility\SimpleContainer->OC\AppFramework\Utility\{closure}(Object(Pimple\Container))
#15 /var/www/html/lib/private/AppFramework/Utility/SimpleContainer.php(120): Pimple\Container->offsetGet('OCP\\Lock\\ILocki...')
#16 /var/www/html/lib/private/ServerContainer.php(155): OC\AppFramework\Utility\SimpleContainer->query('OCP\\Lock\\ILocki...', true)
#17 /var/www/html/lib/private/AppFramework/Utility/SimpleContainer.php(42): OC\ServerContainer->query('OCP\\Lock\\ILocki...')
#18 /var/www/html/lib/private/Files/View.php(74): OC\AppFramework\Utility\SimpleContainer->get('OCP\\Lock\\ILocki...')
#19 /var/www/html/lib/private/Server.php(422): OC\Files\View->__construct()
#20 /var/www/html/lib/private/AppFramework/Utility/SimpleContainer.php(153): OC\Server->OC\{closure}(Object(OC\Server))
#21 /var/www/html/3rdparty/pimple/pimple/src/Pimple/Container.php(122): OC\AppFramework\Utility\SimpleContainer->OC\AppFramework\Utility\{closure}(Object(Pimple\Container))
#22 /var/www/html/lib/private/AppFramework/Utility/SimpleContainer.php(120): Pimple\Container->offsetGet('OC\\Files\\Node\\H...')
#23 /var/www/html/lib/private/ServerContainer.php(155): OC\AppFramework\Utility\SimpleContainer->query('OC\\Files\\Node\\H...', true)
#24 /var/www/html/lib/private/AppFramework/Utility/SimpleContainer.php(42): OC\ServerContainer->query('OC\\Files\\Node\\H...')
#25 /var/www/html/lib/private/Server.php(1303): OC\AppFramework\Utility\SimpleContainer->get('OC\\Files\\Node\\H...')
#26 /var/www/html/lib/base.php(634): OC\Server->boot()
#27 /var/www/html/lib/base.php(1156): OC::init()
#28 /var/www/html/console.php(28): require_once('/var/www/html/l...')
#29 /var/www/html/occ(33): require_once('/var/www/html/c...')
#30 {main}
Next OC\DB\Exceptions\DbalException: An exception occurred while executing a query: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'nextcloud.oc_appconfig' doesn't exist in /var/www/html/lib/private/DB/Exceptions/DbalException.php:56
Stack trace:
#0 /var/www/html/lib/private/DB/ConnectionAdapter.php(53): OC\DB\Exceptions\DbalException::wrap(Object(Doctrine\DBAL\Exception\TableNotFoundException), '', 'SELECT `appid`,...')
#1 /var/www/html/lib/private/DB/QueryBuilder/QueryBuilder.php(289): OC\DB\ConnectionAdapter->executeQuery('SELECT `appid`,...', Array, Array)
#2 /var/www/html/lib/private/AppConfig.php(1233): OC\DB\QueryBuilder\QueryBuilder->executeQuery()
#3 /var/www/html/lib/private/AppConfig.php(243): OC\AppConfig->loadConfig(NULL, false)
#4 /var/www/html/lib/private/legacy/OC_App.php(653): OC\AppConfig->searchValues('installed_versi...')
#5 /var/www/html/lib/private/Server.php(612): OC_App::getAppVersions()
#6 /var/www/html/lib/private/Memcache/Factory.php(112): OC\Server->OC\{closure}()
#7 /var/www/html/lib/private/Memcache/Factory.php(124): OC\Memcache\Factory->getGlobalPrefix()
#8 /var/www/html/lib/private/Server.php(968): OC\Memcache\Factory->createLocking('lock')
#9 /var/www/html/lib/private/AppFramework/Utility/SimpleContainer.php(153): OC\Server->OC\{closure}(Object(OC\Server))
#10 /var/www/html/3rdparty/pimple/pimple/src/Pimple/Container.php(122): OC\AppFramework\Utility\SimpleContainer->OC\AppFramework\Utility\{closure}(Object(Pimple\Container))
#11 /var/www/html/lib/private/AppFramework/Utility/SimpleContainer.php(120): Pimple\Container->offsetGet('OCP\\Lock\\ILocki...')
#12 /var/www/html/lib/private/ServerContainer.php(155): OC\AppFramework\Utility\SimpleContainer->query('OCP\\Lock\\ILocki...', true)
#13 /var/www/html/lib/private/AppFramework/Utility/SimpleContainer.php(42): OC\ServerContainer->query('OCP\\Lock\\ILocki...')
#14 /var/www/html/lib/private/Files/View.php(74): OC\AppFramework\Utility\SimpleContainer->get('OCP\\Lock\\ILocki...')
#15 /var/www/html/lib/private/Server.php(422): OC\Files\View->__construct()
#16 /var/www/html/lib/private/AppFramework/Utility/SimpleContainer.php(153): OC\Server->OC\{closure}(Object(OC\Server))
#17 /var/www/html/3rdparty/pimple/pimple/src/Pimple/Container.php(122): OC\AppFramework\Utility\SimpleContainer->OC\AppFramework\Utility\{closure}(Object(Pimple\Container))
#18 /var/www/html/lib/private/AppFramework/Utility/SimpleContainer.php(120): Pimple\Container->offsetGet('OC\\Files\\Node\\H...')
#19 /var/www/html/lib/private/ServerContainer.php(155): OC\AppFramework\Utility\SimpleContainer->query('OC\\Files\\Node\\H...', true)
#20 /var/www/html/lib/private/AppFramework/Utility/SimpleContainer.php(42): OC\ServerContainer->query('OC\\Files\\Node\\H...')
#21 /var/www/html/lib/private/Server.php(1303): OC\AppFramework\Utility\SimpleContainer->get('OC\\Files\\Node\\H...')
#22 /var/www/html/lib/base.php(634): OC\Server->boot()
#23 /var/www/html/lib/base.php(1156): OC::init()
#24 /var/www/html/console.php(28): require_once('/var/www/html/l...')
#25 /var/www/html/occ(33): require_once('/var/www/html/c...')
looks like the main, relevant lines are:
PDOException: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'nextcloud.oc_appconfig' doesn't exist in /var/www/html/3rdparty/doctrine/dbal/src/Driver/PDO/Statement.php:130
Next Doctrine\DBAL\Driver\PDO\Exception: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'nextcloud.oc_appconfig' doesn't exist in /var/www/html/3rdparty/doctrine/dbal/src/Driver/PDO/Exception.php:24
Next Doctrine\DBAL\Exception\TableNotFoundException: An exception occurred while executing a query: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'nextcloud.oc_appconfig' doesn't exist in /var/www/html/3rdparty/doctrine/dbal/src/Driver/API/MySQL/ExceptionConverter.php:49
Next OC\DB\Exceptions\DbalException: An exception occurred while executing a query: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'nextcloud.oc_appconfig' doesn't exist in /var/www/html/lib/private/DB/Exceptions/DbalException.php:56
I have checked the forums for similar issues, they didn’t solve my problem.
The Basics
- Nextcloud Server version (e.g., 29.x.x):
31.0.0.18
(this looks wrong in the config.php…should be 31.0.2, but didn’t ‘take’)
- Operating system and version (e.g., Ubuntu 24.04):
Linux umbrel 5.10.103-v8+ #1529
- Web server and version (e.g, Apache 2.4.25):
Apache 2 something, not sure how to check
- Reverse proxy and version _(e.g. nginx 1.27.2)
replace me
- PHP version (e.g, 8.3):
replace me
- Is this the first time you’ve seen this error? (Yes / No):
yes
- When did this problem seem to first start?
couple of days ago after trying to update
- Installation method (e.g. AlO, NCP, Bare Metal/Archive, etc.)
docker on umbrel
- Are you using CloudfIare, mod_security, or similar? (Yes / No)
no
Summary of the issue you are facing:
Internal Server error. All files exist, I can ssh in and see all my files. I cannot run occ in the docker environment due to the subject line error - the Table does not exist.
Log entries
Nextcloud
Please provide the log entries from your Nextcloud log that are generated during the time of problem (via the Copy raw option from Administration settings->Logging screen or from your nextcloud.log
located in your data directory). Feel free to use a pastebin/gist service if necessary.
root@umbrel:/mnt/data/umbrel/app-data/nextcloud/data/nextcloud/data# tail -100 | jq
^C
root@umbrel:/mnt/data/umbrel/app-data/nextcloud/data/nextcloud/data# tail -100 nextcloud.log | jq '.message' | uniq
Unable to generate a URL for the named route "cloud_federation_api.requesthandler.addshare" as such route does not exist.
The loading of lazy AppConfig values have been triggered by app "core"
Unable to generate a URL for the named route "cloud_federation_api.requesthandler.addshare" as such route does not exist.
Capabilities of OCA\\CloudFederationAPI\\Capabilities took 0.67 seconds to generate.
Unable to generate a URL for the named route "ocs.password_policy.api.generate" as such route does not exist.
Unable to generate a URL for the named route "ocs.password_policy.api.validate" as such route does not exist.
Failed to connect to the database: An exception occurred in the driver: SQLSTATE[HY000] [2002] Connection refused
Web Browser
If the problem is related to the Web interface, open your browser inspector Console and Network tabs while refreshing (reloading) and reproducing the problem. Provide any relevant output/errors here that appear.
GET http://umbrel:8081/ 500 (Internal Server Error)
Web server / Reverse Proxy
The output of your Apache/nginx/system log in /var/log/____
:
I don't know where to find this in a docker instance...
Configuration
Nextcloud
The output of occ config:list system
or similar is best, but, if not possible, the contents of your config.php
file from /path/to/nextcloud
is fine (make sure to remove any identifiable information!):
<?php
$CONFIG = array (
'htaccess.RewriteBase' => '/',
'memcache.local' => '\\OC\\Memcache\\APCu',
'apps_paths' =>
array (
0 =>
array (
'path' => '/var/www/html/apps',
'url' => '/apps',
'writable' => false,
),
1 =>
array (
'path' => '/var/www/html/custom_apps',
'url' => '/custom_apps',
'writable' => true,
),
),
'memcache.distributed' => '\\OC\\Memcache\\Redis',
'memcache.locking' => '\\OC\\Memcache\\Redis',
'redis' =>
array (
'host' => 'nextcloud_redis_1',
'password' => 'xxxxx',
'port' => 6379,
),
'trusted_proxies' =>
array (
0 => '10.21.0.0/16',
),
'upgrade.disable-web' => true,
'passwordsalt' => 'xxxxx',
'secret' => 'xxxxx',
'trusted_domains' =>
array (
0 => 'localhost',
1 => 'nextcloud_web_1',
2 => 'rczd6g3ozpwbqibgbggfnruqgnjj5uqrkfqfyrflj46eemi2beidohyd.onion',
3 => 'umbrel:8081',
4 => '192.168.7.82',
5 => '10.21.0.1',
6 => '172.17.0.1',
),
'datadirectory' => '/var/www/html/data',
'dbtype' => 'mysql',
'version' => '31.0.0.18',
'overwrite.cli.url' => 'http://localhost',
'dbname' => 'nextcloud',
'dbhost' => 'nextcloud_db_1',
'dbport' => '',
'dbtableprefix' => 'oc_',
'mysql.utf8mb4' => true,
'dbuser' => 'nextcloud',
'dbpassword' => 'xxxxx',
'installed' => true,
'instanceid' => 'yyyyyy',
'loglevel' => 0,
'maintenance' => false,
);
Apps
I cannot run occ
.
Day 2 of trying to fix this - so I would really appreciate an assist!
TIA