Internal Server Error , Table 'nextcloud.oc_appconfig' doesn't exist

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

Hello @contrafiat,

I assume, you did not play with the database schema, am I right?

Can you check what occ status returns? I suspect a pending installation.

I hope for you that you have a backup just in case. Make another (additional) backup now. Only then you could try to fix this. You do not want to loose more then already lost.

If I am correct, the upgrade was interrupted. I suspect that a migration was aborted. This should be relatively save: The NC server keeps track of which migrations have been successfully handled. If a migration was not handled, it will be retried. If programmed correctly, it will finish wherever it was left and continue with the missing migrations. To do this, you can use occ upgrade.
With the migration not in place, the repair steps will not work as expected.

Chris

Hello @christianlupus ,

Thank you so much for our reply.

You’re correct, I didn’t change anything in the database schema (or anywhere else, for that matter). I believe I was on 31.0.18 and there was a prompt to update to 31.0.2. After that (supposedly!) finished, I started getting the Internal Server Error from the web ui. I’ve rebooted a few times, restarted the server, etc. to no avail.

I am not able to run occ - when I do, I get the error in the second half of my subject line - Table 'nextcloud.oc_appconfig' doesn't exist.

All of my files are there (I can still ssh into the little box this is running on), docker shows everything is running OK, there’s just some disconnect where I cannot access the app over the web. I’m certain it’s a setting somewhere.

ANY assistance or ideas would be most welcome!

Most probably, you came from 30.0.8 (the latest NC30 release).

Normally, the occ command at least should give you some access. But it seems the core has some very basic problem as the app’s config is not found. This might explain why occ is rejecting to work.

Can you dig into the database (mysql in your case) and verify that the tables exist there at least? What tables are there available?

Thank you again, @christianlupus . I don’t know how to run a mysql script in a docker instance – any ideas?

You can use the same commands as usual. But from within the docker containers.

Are you by chance using docker compose? Then the commands can be somewhat simplified.

Otherwise, they are along these lines:

docker exec -it nextcloud_db_1 mariadb -u nextclout nextcloud -p

You should as well be able to use the nextclout container as basis.

That’s a big clue, thank you!

use nextcloud;
Database changed
show tables;
Empty set (0.01 sec)

then I searched the entire disk for any *.ibd, *.frm, or *.opt files…and there are basically none (for nextcloud). Then I looked for any *.bak files, in case the upgrade process made one–but it didn’t.

Is there a way to rebuild all the tables based on existing files, without doing a clean re-install?

Please disregard my last question. I’ve pulled off all the files and will reinstall and rebuild. Thank you very much for your help–I learned quite a bit!

Not sure if I can mark my own post as the solution, but–since i had no backups, and since there were no tables in the nextcloud database, the solution is to simply save off the files and do a clean reinstall.

1 Like

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