Discourse-Backup-Version wiederherstellen

I had a small discourse forum for a few years and it works well. I set up autobackups, but didn’t update discourse version for a long time.

Server died, but I have backup. Backup is from the old discourse version, about a 2 years ago. When I’m trying to install the newest version and restore from backup, it doesn’t work. When I’m trying to install old version, it isn’t possible: setup script automatically pulls new commits and latest docker image, I even found these lines in launcher script and deleted, but some internal code in docker image also checks and updates git to latest version.

What should I do? How can I run old discourse version or restore old backup on a new version?

If you want help, you’ll need to be more specific. It should work. There’s a good chance that the issue will also not work if you were able to install the same version of Discourse that you had then.

What was the error you got when you tried to restore?

There is no critical errors in ./launcher logs app output, but forum doesn’t work. Almost all buttons doesn’t work, there is no topics, and html is looking strange (buggy start page repeats itself and can be scrolled to the bottom without limit).

I’m not professional tech guy, and I hope you can tell me which logs I can add to my report where can I find them.

Does anyone know, where I can find reliable logs?

Are there any errors in /logs route of your forum?

Problem is that I can’t access /logs - “this page doesn’t exist or private”. And I cannot log in to check it.

Try using the admin login at https://forum.example.com/u/admin-login[1].


  1. You learn something new everyday! ↩︎

Thanks for link, but it won’t work. It sends email, but I don’t have smtp server and using this plugin: Disable Email Verification for Discourse Plugin

Maybe, some console commands on server are possible to check what happened?

AFAIK that plugin is broken. You may not want to use it (unless you are using the remake?).

1 „Gefällt mir“

There was no different solution to allow users create accounts without email confirmation, when I created a server.

Maybe it’s broken now, but I’m trying at least to restore the old version of forum.

1 „Gefällt mir“

Currently I cannot access any data from forum, even I have a backup. Only forum logo and tags is shown, and all buttons are unusable.

1 „Gefällt mir“

Ouch, that complicates things. Could you try what is mentioned here to get some logs?

Did you try safe mode?

And comment out the broken plugin, and maybe any other plugins you have. You can add them back once you get anything working.

Rails production logs doesn’t contain critical errors, product_errors.log is empty.

Unicorn error logs unknown OID 17246: failed to recognize type of 'embeddings'. It will be treated as String. Failed to report error: Connection refused - connect(2) for 127.0.0.1:6379 (redis://localhost:6379) 2 EOFError subscribe failed, reconnecting in 1 second. Call stack /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/redis-client-0.25.2/lib/redis_client/ruby_connection.rb:103:in `rescue in read' /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/redis-client-0.25.2/lib/redis_client/ruby_connection.rb:94:in `read' /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/redis-client-0.25.2/lib/redis_client.rb:535:in `next_event' /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/redis-5.4.0/lib/redis/subscribe.rb:66:in `subscription' /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/redis-5.4.0/lib/redis/subscribe.rb:17:in `subscribe' /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/redis-5.4.0/lib/redis.rb:175:in `_subscription' /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/redis-5.4.0/lib/redis/commands/pubsub.rb:17:in `subscribe' /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/message_bus-4.4.1/lib/message_bus/backends/redis.rb:293:in `global_subscribe' /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/message_bus-4.4.1/lib/message_bus.rb:769:in `global_subscribe_thread' /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/message_bus-4.4.1/lib/message_bus.rb:740:in `block in new_subscriber_thread' Failed to report error: Connection refused - connect(2) for 127.0.0.1:6379 (redis://localhost:6379) 3 Error fetching job: Connection refused - connect(2) for 127.0.0.1:6379 Failed to report error: Connection refused - connect(2) for 127.0.0.1:6379 (redis://localhost:6379) 3 Error fetching job: Connection refused - connect(2) for 127.0.0.1:6379 Failed to report error: Connection refused - connect(2) for 127.0.0.1:6379 (redis://localhost:6379) 3 Error fetching job: Connection refused - connect(2) for 127.0.0.1:6379 Failed to report error: Connection refused - connect(2) for 127.0.0.1:6379 (redis://localhost:6379) 3 Error fetching job: Connection refused - connect(2) for 127.0.0.1:6379 Failed to report error: Connection refused - connect(2) for 127.0.0.1:6379 (redis://localhost:6379) 3 Error fetching job: Connection refused - connect(2) for 127.0.0.1:6379 Failed to report error: Connection refused - connect(2) for 127.0.0.1:6379 (redis://localhost:6379) 3 Job exception: Connection refused - connect(2) for 127.0.0.1:6379 sidekiq-exception Failed to report error: Connection refused - connect(2) for 127.0.0.1:6379 (redis://localhost:6379) 3 Job exception: Connection refused - connect(2) for 127.0.0.1:6379 sidekiq-exception Failed to report error: Connection refused - connect(2) for 127.0.0.1:6379 (redis://localhost:6379) 3 Job exception: Connection refused - connect(2) for 127.0.0.1:6379 sidekiq-exception Failed to report error: Connection refused - connect(2) for 127.0.0.1:6379 (redis://localhost:6379) 3 Job exception: Connection refused - connect(2) for 127.0.0.1:6379 sidekiq-exception Failed to report error: Connection refused - connect(2) for 127.0.0.1:6379 (redis://localhost:6379) 3 Job exception: Connection refused - connect(2) for 127.0.0.1:6379 sidekiq-exception Failed to report error: Connection refused - connect(2) for 127.0.0.1:6379 (redis://localhost:6379) 3 heartbeat: Connection refused - connect(2) for 127.0.0.1:6379 Failed to report error: Connection refused - connect(2) for 127.0.0.1:6379 (redis://localhost:6379) 3 Job exception: Connection refused - connect(2) for 127.0.0.1:6379 (redis://localhost:6379) sidekiq-exception Failed to report error: Connection refused - connect(2) for 127.0.0.1:6379 (redis://localhost:6379) 2 Connection refused - connect(2) for 127.0.0.1:6379 (redis://localhost:6379) subscribe failed, reconnecting in 1 second. Call stack /usr/local/lib/ruby/3.3.0/socket.rb:1219:in `__connect_nonblock' /usr/local/lib/ruby/3.3.0/socket.rb:1219:in `connect_nonblock' /usr/local/lib/ruby/3.3.0/socket.rb:60:in `connect_internal' /usr/local/lib/ruby/3.3.0/socket.rb:141:in `connect' /usr/local/lib/ruby/3.3.0/socket.rb:647:in `block in tcp' /usr/local/lib/ruby/3.3.0/socket.rb:231:in `each' /usr/local/lib/ruby/3.3.0/socket.rb:231:in `foreach' /usr/local/lib/ruby/3.3.0/socket.rb:637:in `tcp' /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/redis-client-0.25.2/lib/redis_client/ruby_connection.rb:120:in `connect' /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/redis-client-0.25.2/lib/redis_client/connection_mixin.rb:11:in `reconnect' /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/redis-client-0.25.2/lib/redis_client.rb:769:in `block in connect' /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/redis-client-0.25.2/lib/redis_client/middlewares.rb:12:in `connect' /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/redis-client-0.25.2/lib/redis_client.rb:768:in `connect' /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/redis-client-0.25.2/lib/redis_client.rb:759:in `raw_connection' /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/redis-client-0.25.2/lib/redis_client.rb:719:in `ensure_connected' /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/redis-client-0.25.2/lib/redis_client.rb:314:in `call_v' /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/redis-5.4.0/lib/redis/client.rb:90:in `call_v' /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rack-mini-profiler-4.0.1/lib/mini_profiler/profiling_methods.rb:90:in `block in profile_method' /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/redis-5.4.0/lib/redis.rb:152:in `block in send_command' /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/redis-5.4.0/lib/redis.rb:151:in `synchronize' /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/redis-5.4.0/lib/redis.rb:151:in `send_command' /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/redis-5.4.0/lib/redis/commands/strings.rb:191:in `get' /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/message_bus-4.4.1/lib/message_bus/backends/redis.rb:366:in `process_global_backlog' /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/message_bus-4.4.1/lib/message_bus/backends/redis.rb:279:in `block in global_subscribe' /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/message_bus-4.4.1/lib/message_bus/backends/redis.rb:291:in `global_subscribe' /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/message_bus-4.4.1/lib/message_bus.rb:769:in `global_subscribe_thread' /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/message_bus-4.4.1/lib/message_bus.rb:740:in `block in new_subscriber_thread' unknown OID 17246: failed to recognize type of 'embeddings'. It will be treated as String.

Sidekiq logs are empty.

No problems in Nginx logs.

I see redis connection problem in Unicord logs, but Redis logs itself have no errors:

9706:C 28 Aug 2025 15:11:25.025 * Fork CoW for RDB: current 1 MB, peak 1 MB, average 0 MB 881:M 28 Aug 2025 15:11:25.106 * Background saving terminated with success 881:M 28 Aug 2025 15:16:26.096 * 100 changes in 300 seconds. Saving... 881:M 28 Aug 2025 15:16:26.097 * Background saving started by pid 10037 10037:C 28 Aug 2025 15:16:26.109 * DB saved on disk 10037:C 28 Aug 2025 15:16:26.109 * Fork CoW for RDB: current 1 MB, peak 1 MB, average 0 MB 881:M 28 Aug 2025 15:16:26.198 * Background saving terminated with success 881:M 28 Aug 2025 15:21:27.004 * 100 changes in 300 seconds. Saving... 881:M 28 Aug 2025 15:21:27.004 * Background saving started by pid 10365 10365:C 28 Aug 2025 15:21:27.019 * DB saved on disk 10365:C 28 Aug 2025 15:21:27.019 * Fork CoW for RDB: current 1 MB, peak 1 MB, average 0 MB 881:M 28 Aug 2025 15:21:27.105 * Background saving terminated with success 881:M 28 Aug 2025 15:26:28.030 * 100 changes in 300 seconds. Saving... 881:M 28 Aug 2025 15:26:28.031 * Background saving started by pid 10703 10703:C 28 Aug 2025 15:26:28.050 * DB saved on disk 10703:C 28 Aug 2025 15:26:28.051 * Fork CoW for RDB: current 1 MB, peak 1 MB, average 0 MB 881:M 28 Aug 2025 15:26:28.132 * Background saving terminated with success 881:M 28 Aug 2025 15:31:29.094 * 100 changes in 300 seconds. Saving... 881:M 28 Aug 2025 15:31:29.095 * Background saving started by pid 11028 11028:C 28 Aug 2025 15:31:29.109 * DB saved on disk 11028:C 28 Aug 2025 15:31:29.110 * Fork CoW for RDB: current 1 MB, peak 1 MB, average 0 MB 881:M 28 Aug 2025 15:31:29.196 * Background saving terminated with success

Postgresql logs have no errors.

How can I enable it?

Sorry. I typed “safe-mode” instead of “safe mode” and didn’t notice that it wasn’t auto-linked.

Thanks, it helped and forum is working (not properly, but I can access topics with contect).

However, forum without safe mode is unusable, and I don’t exactly remember which plugins I installed. List of plugins should be in app.yml, but server is dead and I have only backup, which doesn’t contain app.yml, as I know. What should I do to restore forum and remove broken plugins?

Restoring without using an existing app.yml shouldn’t install any plugin except the bundled ones (which are all official).

However, themes and theme components are included in the backup, so try deactivating them.

You can also try using the safe mode and disable only themes and components to be sure your issues are caused by one of them.

1 „Gefällt mir“

Thanks, it really works only without themes, but where can I find themes? In backup I see only two items: dump.sql.gz and uploads folder, that contains only user media and files.

You can just access the themes from the admin interface. You can first disable them all and then turn them on one at a time (or whatever).