Migrar un foro phpBB3 a Discourse

Parece que la versión actual del script tiene algunos errores. ¿Podrías intentar actualizar tu archivo settings.yml y asegurarte de que new_categories y category_mappings se vean como se muestra a continuación?

new_categories: []
category_mappings: {}
11 Me gusta

@gerhard gracias por el consejo… lo probaré en un instante

1 me gusta

Muchas gracias, funcionó

3 Me gusta

Se ha fusionado una publicación en un tema existente: Guía para principiantes para instalar Discourse en Windows 10 para desarrollo

¡Esto es una gran noticia! Gracias. Tengo una copia de prueba de 3.2 sqldump con la que haré algunas pruebas, y también haré una copia de 3.3 para probarla. Ojalá pudiera permitirme que ustedes se encarguen, pero los bolsillos están muy vacíos… jeje.

De todos modos, gracias de nuevo y ¡estoy deseando probarlo!

2 Me gusta

Tengo problemas al importar.. Cuando ejecuto el script de importación, se carga mi volcado SQL y aparece el mensaje “La importación de phpBB3 está comenzando…”, pero inmediatamente muestra un rastreo de errores con el error general:

/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/bootsnap-1.7.0/lib/bootsnap/compile_cache.rb:29:in `permission_error’: bootsnap no tiene permisos para escribir entradas en la caché en ‘tmp/cache/bootsnap/compile-cache’ (o, menos probablemente, no tiene permisos para leer ‘/usr/local/lib/ruby/2.7.0/set.rb’) (Bootsnap::CompileCache::PermissionError)

Obviamente es algún tipo de error de permisos, pero estoy tratando de determinar qué debo hacer para solucionarlo.. ¡Agradezco cualquier ayuda!

1 me gusta

¡ACTUALIZACIÓN! ¡Lo resolví! Un rápido chmod en el contenedor solucionó ese problema.

Lo probé con una base de datos de phpBB 3.3 aplicando el cambio que sugeriste y funciona de maravilla. Estoy realizando algunas pruebas más exhaustivas, pero todo está más o menos en su lugar, a excepción de algunos problemas de BBCode esperados. Usuarios, mensajes, publicaciones, todo se copió correctamente. Lo único que aparentemente no funcionó es la migración de contraseñas. Es algo menor. Tuve el módulo instalado y pude ver que se cargó, así que no sé por qué no se transfirieron. No importa, estoy emocionado de finalmente dejar phpBB atrás.

¡Gracias de nuevo @gerhard por tu trabajo!

2 Me gusta

Eso es bueno saberlo. Siéntete libre de enviarme un mensaje privado con ejemplos de problemas de BBCode. Estoy interesado en el valor de la columna phpbb_posts.post_text.

3 Me gusta

He intentado importar un phpBB3 (.2.7) en dos ocasiones.
La primera vez no se importó ningún tema y los usuarios quedaron desconfigurados.
Reinstalé Ubuntu desde cero y volví a hacer todo, pero esta vez me he quedado atascado en la parte de import_phpbb3.sh; carga la base de datos y luego se detiene con el siguiente error:

La importación de phpBB3 está comenzando...

Traceback (most recent call last):
        20: from script/import_scripts/phpbb3.rb:13:in `<main>'
        19: from script/import_scripts/phpbb3.rb:14:in `<module:ImportScripts>'
        18: from script/import_scripts/phpbb3.rb:15:in `<module:PhpBB3>'
        17: from script/import_scripts/phpbb3.rb:15:in `require_relative'
        16: from /var/www/discourse/script/import_scripts/phpbb3/support/settings.rb:5:in `<top (required)>'
        15: from /var/www/discourse/script/import_scripts/phpbb3/support/settings.rb:5:in `require_relative'
        14: from /var/www/discourse/script/import_scripts/base.rb:16:in `<top (required)>'
        13: from /var/www/discourse/script/import_scripts/base.rb:16:in `require_relative'
        12: from /var/www/discourse/config/environment.rb:4:in `<top (required)>'
        11: from /var/www/discourse/config/environment.rb:4:in `require'
        10: from /var/www/discourse/config/application.rb:70:in `<top (required)>'
         9: from /var/www/discourse/config/application.rb:71:in `<module:Discourse>'
         8: from /var/www/discourse/config/application.rb:96:in `<class:Application>'
         7: from /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.3/lib/active_support/dependencies.rb:324:in `require'
         6: from /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.3/lib/active_support/dependencies.rb:291:in `load_dependency'
         5: from /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.3/lib/active_support/dependencies.rb:324:in `block in require'
         4: from /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:44:in `require'
         3: from /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `require_with_bootsnap_lfi'
         2: from /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/loaded_features_index.rb:89:in `register'
         1: from /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `block in require_with_bootsnap_lfi'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `require': cannot load such file -- mocha/version (LoadError)

Agradezco mucho cualquier ayuda.

1 me gusta

Actualización sobre phpBB 3.3: algo que desearía haber notado antes de transferir los foros. Los archivos adjuntos cambiaron en la versión 3.3. En lugar de usar el nombre físico del archivo, ahora cada uno tiene un identificador único que se cruza en la tabla phpbb_attachments. El identificador único del archivo tiene el formato USERID_posiblecadenaaleatoria.

No hay extensión de archivo ni nada similar, ya que phpBB 3.3 lo determina a partir de la tabla. No estoy seguro de cómo automatizar el proceso, así que actualmente estoy restaurando las imágenes antiguas en lotes. Podría acelerar mi proceso ya que tengo una copia anterior de las imágenes previa a la actualización 3.3, pero que los usuarios tengan en cuenta que importar desde la versión 3.3 puede romper sus archivos adjuntos, y les espera un buen rato, especialmente si tienen varios miles como yo. ¡Bueno! Suerte por ser voluntario conejillo de indias.

2 Me gusta

¿Esa fue toda la información que te proporcionó? La mía indicaba que no pudo cargar el directorio tmp/ debido a problemas de permisos, así que, mientras estaba en el contenedor de importación, ejecuté un chmod -R 777 en ese directorio. Nuevamente, esto fue solo para la importación y no afectará a tu contenedor de “app”.

2 Me gusta

Logré importar desde phpBB 3.2, pero tuve que:

  • Importar la base de datos en MariaDB interno manualmente: mysql -u root -p phpbb < /shared/import/mysql/data/phpbb_mysql.sql

  • Configurar settings.yml con new_categories: [] category_mappings: {}

  • Ejecutar el script de importación varias veces, ya que las publicaciones y los temas me daban errores la primera vez.

Después de eso, todo funcionó correctamente…

2 Me gusta

Hola a todos.
Tengo un problema.
Hay una instancia en https://discourse.example.com/
Quiero importar una base de datos desde https://forum.old.example.com/
Seguí todos los pasos de esta guía.
Hice un volcado de la base de datos, lo llamé phpbb_mysql.sql y lo coloqué en

/var/discourse/shared/standalone/import/data/

Después de ejecutar

/var/discourse/launcher enter import
import_phpbb3.sh

Recibo el siguiente error:

La tabla ‘phpbb.phpbb_config’ no existe

¿Podría ser un problema de configuración en settings.yml?

Por favor, ayúdame a resolver este problema.

1 me gusta

Asegúrate de que el table_prefix sea correcto. ¿Se muestra como phpbb_ en el panel de control?

2 Me gusta

Sí, mi prefijo es correcto

1 me gusta

Si estoy entendiendo correctamente, schema en tu settings.yml debería estar configurado como teamlab_forum_saas.

2 Me gusta

Este es el nombre de la base de datos. ¿Es este el esquema?

1 me gusta

Eso es correcto. En MySQL schema es sinónimo de database. :slightly_smiling_face:

3 Me gusta

Un momento, lo intentaré.

1 me gusta

¡Qué bien! Muchas gracias. Me ayudó :+1: :clap:

2 Me gusta