Acabo de instalar Discourse en un nuevo servidor e intenté subir una copia de seguridad de aproximadamente 400 MB.
Se detiene al 40% con el siguiente error: Slow down, too many requests from this IP address. Please retry again in 2 seconds. Error code: ip_10_secs_limit.
Como solución alternativa, podría cargar la copia de seguridad a través de SCP. Consulte Restore a backup from the command line para obtener más información.
Seguí tu enlace para restaurar la copia de seguridad desde la CLI, pero no se restauró nada, seguía igual que una instalación nueva.
¿Está en la copia de seguridad el archivo “old” app.yml y se sobrescribirá cuando restaure la copia de seguridad? Si no es así, toda la copia de seguridad es inútil.
Intenté restaurar la copia de seguridad desde Discourse y ahora tengo un sitio en blanco.
Esto es desde la línea de comandos cuando intento restaurar la copia de seguridad. Por supuesto, seguí los comandos del enlace, pero parece que algo ha cambiado.
Starting restore: backup-2021-12-06-185610-v20211201221028.tar.gz
[STARTED]
'system' has started the restore!
Marking restore as running...
Making sure /var/www/discourse/tmp/restores/default/2021-12-18-163225 exists...
Copying archive to tmp directory...
EXCEPTION: lib/discourse.rb:127:in `exec': Failed to copy archive to tmp directory.
cp: cannot stat '/var/www/discourse/public/backups/default/backup-2021-12-06-185610-v20211201221028.tar.gz': No such file or directory
lib/discourse.rb:154:in `execute_command'
lib/discourse.rb:127:in `exec'
lib/discourse.rb:34:in `execute_command'
/var/www/discourse/lib/backup_restore/local_backup_store.rb:42:in `download_file'
/var/www/discourse/lib/backup_restore/backup_file_handler.rb:62:in `copy_archive_to_tmp_directory'
/var/www/discourse/lib/backup_restore/backup_file_handler.rb:22:in `decompress'
/var/www/discourse/lib/backup_restore/restorer.rb:42:in `run'
script/discourse:149:in `restore'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/thor-1.1.0/lib/thor/command.rb:27:in `run'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/thor-1.1.0/lib/thor/invocation.rb:127:in `invoke_command'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/thor-1.1.0/lib/thor.rb:392:in `dispatch'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/thor-1.1.0/lib/thor/base.rb:485:in `start'
script/discourse:290:in `<top (required)>'
/usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.2.26/lib/bundler/cli/exec.rb:58:in `load'
/usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.2.26/lib/bundler/cli/exec.rb:58:in `kernel_load'
/usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.2.26/lib/bundler/cli/exec.rb:23:in `run'
/usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.2.26/lib/bundler/cli.rb:477:in `exec'
/usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.2.26/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
/usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.2.26/lib/bundler/vendor/thor/lib/thor/invocation.rb:127:in `invoke_command'
/usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.2.26/lib/bundler/vendor/thor/lib/thor.rb:392:in `dispatch'
/usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.2.26/lib/bundler/cli.rb:31:in `dispatch'
/usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.2.26/lib/bundler/vendor/thor/lib/thor/base.rb:485:in `start'
/usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.2.26/lib/bundler/cli.rb:25:in `start'
/usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.2.26/exe/bundle:49:in `block in <top (required)>'
/usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.2.26/lib/bundler/friendly_errors.rb:128:in `with_friendly_errors'
/usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.2.26/exe/bundle:37:in `<top (required)>'
/usr/local/bin/bundle:23:in `load'
/usr/local/bin/bundle:23:in `<main>'
Trying to rollback...
There was no need to rollback
Cleaning stuff up...
Removing tmp '/var/www/discourse/tmp/restores/default/2021-12-18-163225' directory...
Marking restore as finished...
Notifying 'system' of the end of the restore...
Finished!
[FAILED]
Restore done.
Sé lo que quieres decir. pero lo hice exactamente según las instrucciones (sin cometer un error, copié las rutas), así que pregunto si las instrucciones están mal o si algo ha cambiado en las rutas en los últimos 2 años.
Lo intentaré de nuevo, pero tal vez tenga que reinstalar Discourse de nuevo porque ahora solo tengo un sitio en blanco.
Podría restaurar la copia de seguridad con discourse restore, pero faltan algunas categorías, falta toda la cabecera, no puedo iniciar sesión, el archivo app.yml sigue siendo el mismo que en una instalación nueva y muchas cosas más.
La copia de seguridad era del 21.06.12 y elegí hacer una copia de seguridad de todo, pero faltan la mitad de las cosas.
Así que, para mí, todo el proceso de copia de seguridad y restauración es un desastre total.
Esto debería decirse en el momento en que se crea la copia de seguridad (como información al final). No tengo acceso al archivo antiguo y es posible crear uno nuevo, pero no recuerdo qué plugins tenía.
Pero entonces todavía queda la pregunta de por qué faltan algunas categorías y temas, y por qué falta la cabecera y no puedo iniciar sesión.
Fue una instalación limpia en un servidor nuevo, y pensé que app.yml estaba en la copia de seguridad, pero me equivoqué. No tengo acceso a la instancia de Discourse “antigua”, por lo que parece que no hay forma de restaurar el archivo app.yml.
¿Puedes editar el archivo app.yml existente para añadir lo que creas que podría faltar? No estoy seguro de qué podría impedir que se copien las categorías o los inicios de sesión.
¿Restauraste una copia de seguridad completa? La del OP se detuvo al 40%. Si restauraste esa versión, ¿podría explicar por qué falta la mitad de tus cosas?
Sin embargo, solo estoy adivinando en este momento. Lamento no poder ser de más ayuda.
Lamento que hayas tenido tantos problemas. No puedo explicar cómo pudo haber sucedido.
No puedo imaginar una forma en que una copia de seguridad restaure solo algunas categorías. Si solo se restauran algunas categorías, entonces eso es lo que hay en la copia de seguridad que tomaste. Quizás tengas una copia de seguridad antigua.
La app.yml no tiene nada que ver con tus datos, solo con el nombre de host y otras cosas necesarias para configurar Discourse. Puedes restaurar cualquier base de datos en cualquier sitio.
Volveré a instalar Discourse (con una imagen de servidor nueva) e intentaré restaurar la copia de seguridad de nuevo.
El bloqueo del 40% ocurrió al subirla directamente a Discourse, después copié la copia de seguridad al servidor vía SCP.
Sí, eso es cierto, pero pensé que algo importante también se guardaría en la copia de seguridad. Ahora no sé qué plugins tenía instalados en la instancia anterior y cómo eran sus configuraciones.
La copia de seguridad es de este mismo año, del 6 de diciembre, así que hace solo unos días.