J’ai passé toute la journée à essayer d’intégrer mes données MyBB dans Discourse en utilisant plusieurs méthodes différentes, y compris la méthode officielle et des méthodes alternatives. Malgré tous mes efforts, j’ai toujours du mal à faire fonctionner le tout. J’ai rencontré des problèmes de formatage des données, de champs manquants et divers autres obstacles.
Est-ce que cela devrait vraiment être si difficile pour les gens de fusionner MyBB dans Discourse ? Il semble qu’il devrait y avoir un moyen beaucoup plus simple d’y parvenir, d’autant plus que j’ai déjà exporté les données de MyBB (utilisateurs, sujets, messages et catégories) dans des fichiers CSV. Pourtant, le processus d’importation semble trop compliqué et, par moments, dépassé.
D’autres personnes ont-elles rencontré des défis similaires ? Existe-t-il des méthodes simplifiées actuelles ou des outils que je pourrais utiliser pour migrer en douceur mon forum de MyBB vers Discourse sans rencontrer ces problèmes ?
J’apprécierais vraiment toute aide, tous scripts ou toutes procédures étape par étape qui ont fonctionné pour d’autres.
Quelle méthode avez-vous utilisée ? Quelles erreurs avez-vous rencontrées ?
Le script d’importation lit une base de données mysql. Vous ne pouvez pas utiliser de fichiers CSV. Qu’est-ce qui vous a suggéré que vous pouviez utiliser des fichiers CSV ?
Il fonctionne comme les autres scripts d’importation. Et le début du fichier inclut ceci :
Vous devez donc avoir une base de données mysql à laquelle la machine exécutant le script peut accéder, définir ces variables d’environnement et exécuter le script comme indiqué.
Je comprends que la méthode « officielle » repose sur l’accès à une base de données MySQL et l’utilisation du script mybb.rb avec des variables d’environnement — et oui, j’ai essayé cela. J’ai également tenté de mettre en place un environnement de développement Discourse local complet, comme le recommandent les guides d’importation, et j’avais prévu de déplacer les données vers l’environnement de production après l’importation. Mais la réalité est que presque tous les tutoriels et exemples que j’ai trouvés dans la catégorie « Migration vers Discourse » sont soit obsolètes, soit remplis de personnes rencontrant également des erreurs avec l’importateur MyBB.
Le script lui-même est fragile. Il n’a pas bien vieilli et échoue sur des différences de schéma mineures ou des cas limites. La plupart des guides supposent que vous êtes familier avec Ruby, Rails et le fonctionnement interne du code de Discourse — ce qui n’est pas le cas de nombreux administrateurs de forums. Et même lorsque j’ai essayé de simplifier les choses en exportant en CSV, il s’agissait davantage d’essayer de préparer manuellement les données, car les outils fournis ne fonctionnaient tout simplement pas.
Lorsque vous avez dit « Ils fonctionnent tous à peu près de la même manière » — certes, mais c’est là le problème. Beaucoup d’entre eux ne fonctionnent pas bien en 2025 sans correctifs importants, débogage et tâtonnements. Les gens ne luttent pas parce qu’ils n’ont pas lu la documentation — ils luttent parce que l’écosystème d’importation est bloqué dans une mentalité centrée sur le développement.
À ce stade, j’ai simplement décidé de convertir ma base de données SQL MyBB en une sauvegarde Discourse .tar.gz fonctionnelle que je peux télécharger et restaurer via le panneau d’administration. Pas de scripts d’importation, pas d’erreurs Ruby, juste une méthode propre et directe qui fonctionne.
Et honnêtement, je vais écrire un outil Python qui permettra aux gens de simplement glisser-déposer leur fichier SQL MyBB et de l’exporter vers une sauvegarde prête pour Discourse. Tout ce processus m’a montré à quel point un chemin d’importation moderne et convivial est nécessaire. Les utilisateurs ne devraient pas avoir à traverser autant de difficultés juste pour migrer leur communauté.
J’apprécie votre aide cependant — je sais que vous essayez simplement de clarifier, et je ne blâme personne en particulier. Mais toute l’expérience d’importation a vraiment besoin d’une refonte.
Discourse est écrit en ruby, il est donc nécessaire d’écrire un script qui interagit avec les internes de Discourse. Une importation est une proposition centrée sur le développeur.
Chaque script est plein de cas limites. J’ai effectué plus d’une centaine d’importations. Chacune a nécessité des ajustements pour diverses raisons.
La probabilité que vous puissiez écrire un script d’importation pour Discourse en python est très proche de zéro. Si vous le faites, il ne fonctionnera probablement pour personne d’autre. Et une fois que vous aurez effectué votre migration, il est peu probable que vous mainteniez le code pour les futures modifications dans mybb et discourse.