Necesitarás modificar el script para importar los datos. El script de bbPress solo importa publicaciones de un tipo específico (probablemente no recuerdo la terminología correcta de WordPress). ¿Qué tipo de publicaciones de WP quieres importar? ¿Cuáles son temas y cuáles son publicaciones? ¿Hay algo como categorías? Esas son solo algunas preguntas que tendrás que responder modificando el script. Cómo hacerlo está más allá del alcance del soporte que probablemente recibirás aquí.
Edición: Me he retirado varias veces y me he acercado… Ahora:
En el paso 2, al ejecutar mysql -u$MYSQL_USER -p$MYSQL_PASSWORD $MYSQL_DATABASE < /backup/yourbackup.sql, obtengo el error bash: /backups/yourstratapropertywordpress.sql: No such file or directory, aunque el archivo sí existe (al menos en /var/backups sí está).
Si salto y intento ejecutar su discourse -c "bundle exec ruby script/import_scripts/bbpress.rb" de todos modos, obtengo el siguiente resultado:
Cargando usuarios existentes...
Cargando categorías existentes...
Cargando publicaciones existentes...
Cargando temas existentes...
Traceback (most recent call last):
5: from script/import_scripts/bbpress.rb:512:in `<main>'
4: from script/import_scripts/bbpress.rb:512:in `new'
3: from script/import_scripts/bbpress.rb:21:in `initialize'
2: from script/import_scripts/bbpress.rb:21:in `new'
1: from /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/mysql2-0.5.3/lib/mysql2/client.rb:90:in `initialize'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/mysql2-0.5.3/lib/mysql2/client.rb:90:in `connect': Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) (Mysql2::Error::ConnectionError)
¡Gracias! Revisaré la base de datos y el script para ver si puedo lograr mis objetivos.
¡Buena suerte! Escribí al menos un par de importadores antes de ‘aprender’ Ruby. Si tienes conocimientos de SQL que se podrían adquirir en un curso universitario a mediados de los años 80, probablemente puedas lograrlo. Si escribes las consultas de manera que los nombres de los campos en los datos resultantes coincidan con lo que espera el script, es posible que solo necesites modificar el SQL.
@pfaffman Agradecería mucho tu ayuda aquí, estoy muy atascado.
Estoy bastante saturado en este momento y es probable que esto no se resuelva aquí. Envía un correo a Jay@literatecomputing.com con un presupuesto y haré todo lo posible para proponer una solución.
Parece que tu servidor MySQL no se está ejecutando o no está instalado correctamente.
¡Éxito!
El tipo de publicación debe ser post y debe reemplazar el post_type topic. Las etiquetas no se trasladaron, ni tampoco las categorías de los temas. Todas mis publicaciones se importaron como usuario anónimo, ¡pero sin duda es un buen comienzo!
¡Nos alegra que estés avanzando!
Gracias por esta guía clara, fue clave para mi comprensión del proceso de importación en lugar de simplemente copiar y pegar comandos a ciegas.
Todavía estoy tratando de averiguar la forma más rápida de importar un foro muy grande de Drupal, y todavía tengo la impresión de que las cosas podrían optimizarse en mi caso para reducir el tiempo de inactividad cuando realice la ejecución final de migración del foro de producción. Puedo ser un poco “graybeard” (viejo lobo de mar), pero todavía no estoy totalmente convencido del paradigma Docker/contenedores. Estoy seguro de que leí en alguna parte que hubo un error en Docker en algún momento que estaba causando un rendimiento masivamente más lento de las instancias de MySQL dockerizadas. En el foro de Docker, estoy viendo este informe, pero no estoy seguro de si todavía es relevante. Tampoco podría ser relevante en mi caso porque estoy ejecutando Debian en lugar de Ubuntu en el host.
¿Otra opción podría ser instalar MySQL o MariaDB en el sistema operativo host fuera del contenedor?
Y sin entrar en detalles, ¿qué hay de optimizar el my.cnf con algunas sugerencias de MySQLTuner? La configuración estándar de Docker que funciona en todos los casos para todas las instancias no puede ser óptima con sus instancias de grupo de búfer y tamaños de búfer de clave, que marcan una gran diferencia en una base de datos de producción dedicada.
Hola. Gracias por esta solución. He estado teniendo problemas con los gems como mencionaste en tu artículo, así que tengo muchas ganas de que esto funcione. ¿Funciona este método para migrar un foro de Wordpress bbpress (alojado en DreamPress) a una instancia de Discourse (alojada en Digital Ocean)?
Estoy usando el droplet basado en Ubuntu de Digital Ocean y la terminal/consola web. Mi primera pregunta es, ¿qué se espera que suceda cuando ejecuto /var/discourse/launcher stop app /var/discourse/launcher rebuild import? ¿Se supone que la terminal/consola web se cierre? Lo he intentado, pero el archivo import.yml no parece guardarse. Vuelve a su estado predeterminado.
Además, ¿alguien puede arrojar algo de luz sobre si necesito ejecutar el paso opcional 2 en mi configuración?
Muchas gracias de antemano.
PD: Estoy abierto a pagarle a alguien para que lo haga, pero mi presupuesto está limitado a $200.
Quizás quieras publicar eso en Marketplace.