Vous devrez modifier le script pour importer les données. Le script bbPress n’importe que des publications d’un type particulier (je ne me souviens probablement pas du bon terme WordPress). Quels types de publications WordPress souhaitez-vous importer ? Lesquelles sont des sujets et lesquelles sont des publications ? Existe-t-il des catégories ? Ce ne sont là que quelques questions auxquelles vous devrez répondre en modifiant le script. Comment procéder dépasse le cadre du support que vous êtes susceptible d’obtenir ici.
Édition : J’ai pris ma retraite à plusieurs reprises et j’ai fait des progrès… Maintenant :
À l’étape 2, avec la commande mysql -u$MYSQL_USER -p$MYSQL_PASSWORD $MYSQL_DATABASE < /backup/yourbackup.sql, j’obtiens l’erreur bash: /backups/yourstratapropertywordpress.sql: No such file or directory alors que le fichier existe (du moins, il se trouve dans /var/backups).
Si je passe directement à l’étape suivante et que j’exécute su discourse -c "bundle exec ruby script/import_scripts/bbpress.rb" de toute façon, voici le résultat :
Chargement des utilisateurs existants...
Chargement des catégories existantes...
Chargement des messages existants...
Chargement des sujets existants...
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': Impossible de se connecter au serveur MySQL local via le socket '/var/run/mysqld/mysqld.sock' (2) (Mysql2::Error::ConnectionError)
Merci ! Je vais examiner la base de données et le script pour voir si je peux atteindre mes objectifs.
Bonne chance ! J’ai écrit au moins quelques importateurs avant d’avoir « appris » Ruby. Si vous avez une compréhension du SQL qui pourrait être acquise dans un cours de premier cycle au milieu des années 1980, vous pouvez probablement y arriver. Si vous écrivez les requêtes de manière à ce que les noms de champ dans les données résultantes correspondent à ce que le script attend, vous pourriez être en mesure de modifier uniquement le SQL.
@pfaffman J’apprécierais vraiment votre aide ici, je suis vraiment bloqué.
Je suis vraiment débordé en ce moment et ce problème n’est probablement pas résolu ici. Envoyez un e-mail à Jay@literatecomputing.com avec un budget, et je ferai de mon mieux pour trouver une solution.
Il semble que votre serveur MySQL ne soit pas en cours d’exécution ou n’ait pas été installé correctement.
Succès !
Le type de publication doit être post et doit remplacer le type de publication topic. Les tags n’ont pas été transférés, tout comme les catégories des sujets. Tous mes articles ont été importés en tant qu’utilisateur anonyme, mais c’est assurément un bon début !
Ravi de voir que vous avancez bien !
Merci pour ce guide clair, il a été essentiel à ma compréhension du processus d’importation au lieu de simplement copier/coller des commandes à l’aveugle.
J’essaie toujours de trouver le moyen le plus rapide d’importer un très grand forum Drupal, et j’ai toujours l’impression que les choses pourraient être optimisées dans mon cas pour réduire le temps d’arrêt lorsque j’effectuerai la migration finale du forum de production. Je suis peut-être un peu un vieux sage, mais je ne suis pas encore totalement convaincu par le paradigme Docker/conteneurisation. Je suis certain d’avoir lu quelque part qu’il y avait eu un bug Docker à un moment donné qui causait des performances massivement ralenties des instances MySQL conteneurisées. Sur le forum Docker, je vois ce rapport, mais je ne suis pas sûr qu’il soit toujours pertinent. De plus, il pourrait ne pas être pertinent dans mon cas car j’utilise Debian au lieu d’Ubuntu sur l’hôte.
Une autre option pourrait être d’installer MySQL ou MariaDB sur le système d’exploitation hôte en dehors du conteneur ?
Et sans entrer dans les détails, qu’en est-il de l’optimisation de my.cnf avec quelques suggestions de MySQLTuner ? La configuration Docker standard qui fonctionne pour toutes les instances ne peut pas être optimale avec ses instances de pool de tampons et ses tailles de tampon de clés, qui font une énorme différence sur une base de données de production dédiée.
Salut. Merci pour cette solution. J’ai eu des problèmes avec les gems, comme vous l’avez mentionné dans votre article, j’ai donc vraiment hâte de faire fonctionner cela. Cette méthode fonctionne-t-elle pour migrer un forum Wordpress bbpress (hébergé sur DreamPress) vers une instance Discourse (hébergée sur Digital Ocean.)
J’utilise le droplet basé sur Ubuntu de Digital Ocean et le terminal/console web. Ma première question est de savoir ce qui est censé se passer lorsque j’exécute /var/discourse/launcher stop app /var/discourse/launcher rebuild import ? Le terminal/console web est-il censé se fermer. J’ai essayé de le faire, mais le fichier import.yml ne semble pas s’enregistrer. Il revient à son état par défaut.
De plus, quelqu’un peut-il éclairer si j’ai besoin d’exécuter l’étape facultative 2 dans ma configuration ?
Merci beaucoup d’avance.
PS : Je suis prêt à payer quelqu’un pour le faire, mais mon budget est limité à 200 $.
Peut-être que vous voulez poster ça dans Marketplace.