Manual:ImportDump.php/fr


 * Méthodes recommandées à usage général mais lentes si les ensembles de données sont de grande taille. Voir la section sur l'import de grands wikis ci-dessous.

Le fichier importDump.php est un script de maintenance pour importer les fichiers des dumps XML dans le wiki actuel. Il lit les pages à partir d'un fichier XML tel qu'il est produit par Special:Export ou, et les sauvegarde dans le wiki actuel. Il fait partie des scripts de maintenance de MediaWiki et se trouve dans le dossier de maintenance de votre installation MediaWiki.

Si vous avez un accès au shell, vous pouvez appeler importdump.php à partir de votre répertoire de maintenance ainsi (ajoutez les chemins si nécessaire) :

php importDump.php --conf ../LocalSettings.php /path_to/dumpfile.xml.gz --username-prefix=""

ou ceci :

où  est le nom du fichier de dump XML. Si le fichier est compressé et a pour extension  ou   (mais pas   ni  ), il se décompresse automatiquement.

Puis utilisez pour importer les images :

php importImages.php ../path_to/images

Après importDump.php, vous pouvez exécuter rebuildrecentchanges.php pour mettre à jour le contenu de votre page Special:Recentchanges.

Si vous avez importé un dump avec le paramètre, vous devrez exécuter rebuildall.php pour initialiser tous les liens, les modèles et les catégories.



Description des opérations
Le script indique la progression de l'exécution par incrément de 100 pages (valeur par défaut), en affichant le nombre de pages importées par seconde pour chaque incrément, afin que vous puissiez suivre l'activité et voir qu'il n'y a pas de blocage. Peut pendre 30 secondes ou plus entre chaque incrément.

Le script est robuste car il saute les pages qui ont déjà été chargées précédemment plutôt que de les réécrire, il peut ainsi reprendre très rapidement là où il a été interrompu. Il affiche encore la progression en faisant cela, ce qui permet d'avancer assez vite.

Les pages seront importées en conservant l'horodatage de chaque modification. Due to this feature, if a page being imported is older than the existing page, it will only populate the page history, but it won't replace the most recent revision with an older one. If that behavior is not desired, existing pages should be deleted first prior to import, or they'll need to be edited, reverting to the last imported revision found in the page history.

Le wiki reste utilisable durant l'import.

The wiki looks weird missing most of the templates, and with so many red links, but it gets better as the import proceeds.

Exemples
ou

FAQ


Comment passer en mode debug ?
Utiliser l'option  dans la commande en ligne



Comment faire un essais à vide (sans données dans la base) ?
Utiliser l'option  dans la commande en ligne



Messages d'erreur


Erreur à l'ouverture du flux
Si vous obtenez l'erreur « failed to open stream: No such file or directory », vérifiez que le fichier en question existe bien et que PHP a le droit d'y accéder.



Entré
roots@hello:~# php importImages.php /maps gif bmp PNG JPG GIF BMP

Erreur
> PHP Deprecated: Comments starting with '#' are deprecated in /etc/php5/cli/conf.d/mcrypt.ini on line 1 in Unknown on line 0 > Could not open input file: importImages.php

Cause
Before running importImages.php you first need to change directories to the maintenance folder which has the importImages.php maintenance script.



Erreur à l'exécution de MAMP
DB connection error: No such file or directory (localhost)

Solution
Utiliser les informations de connexion spécifiques à la base de données



Importer la Wikipedia anglophone ou d'autres wikis de grande taille
Pour les fichiers de données très grands, importDump.php peut prendre beaucoup de temps (des jours voire des semaines); il existe des méthodes alternatives plus rapides si vous voulez restaurer un site complet, voir.

If you can't get the other methods to work, here are some pointers for using importDump.php for importing large wikis, to reduce import time as much as possible...



Parallèliser les imports
You could try running importDump.php multiple times simultaneously on the same dump, using the option ...

In an experiment on Ubuntu, the script was run (on a decompressed dump) multiple times in separate windows simultaneously using the   option. Avec un laptop à 4 coeurs, l'éxécution du script dans 4 fenêtres séparées a accéléré l'import d'un facteur 4. Dans l'expérience, le paramètre   a été mis à   pour avoir   pages par instance, et l'import a été suivi (vérifié régulièrement), pour arrêter chaque instance avant de mettre en cache la suivante.

Note: This experiment was not tried running multiple instances without the "--skip-to" parameter, to avoid potential clashing -- if you try this without  , or you let the instances catch up to each other, please post your findings here. In this experiment, 2 of the windows caught up, and no error messages resulted. The instances of the script appeared to be jumping past each other.

Using   differs from normal operation, in that progress increments are not displayed during the skip, instead, it's just the (blinking) cursor. After a few minutes, the increment reports begin to display.



Segmenter les données
Il est peut être intéressant de segmenter les donnée d'abord avec un splitter xml, avant de les importer en parallèle. Puis exécuter importDump.php sur chacun des segments dans une fenêtre séparée, afin d'éviter les effets de bord potentiels. (si vous êtes parvenu à segmenter le dump de sorte à ce qu'ils suive ce processus indiquez le svp sur la page de discussion).



Importer d'abord les espaces de noms les plus utiles
Pour accélérer l'import des parties les plus importantes du wiki, utilisez le paramètre  . Importer les modèles en premier car les articles sans modèle opérationnel ont une mise en page horrible. Importez ensuite les articles. Or, do both at the same time, in multiple windows, as described above, starting templates first, as they import faster and the articles window(s) won't catch up.

Note: l'espace de noms Main n'a pas de préfixe, il doit donc être spécifié en utilisant un  . Main et Article échouent durant l'exécution en renvoyant des erreurs.

Once complete, this will necessitate using  again to get the pages in all the other namespaces.



Estimer le temps d'exécution
Before you can estimate how long an import will take, you've got to find out how many total pages are in the wiki you are importing. Ceci est affiché sur Special:Statistics dans chaque wiki. En mars 2022, la Wikipedia anglophone avait plus de 55 000 000 pages, y compris les pages de tout type telles que les pages de discussion, les redirections, etc. mais sans compter les fichiers d'images (files).

To see how fast the import is going, go to the page Special:Statistics in the wiki you are are importing into. Note the time and jot down the total pages. Puis revenez plus tard et notez de combien ce numéro a changé. Convert that to pages per day, and then divide that figure into the total pages for the wiki you are importing, to see how many days the import will take.

For example, in the experiment mentioned above, importing using parallelization, and looking at the total pages in Special:Statistics, the wiki is growing about 1,000,000 pages per day. Therefore, it will take around 55 days at that rate to import the 55,000,000 pages (as of March 2022) in the English Wikipedia (not including pictures).

Résolution des problèmes
Voir aussi : Problèmes communs liés à l'import des dumps

Si des erreurs apparaissent quand vous importez des fichiers, il peut être nécessaire d'utiliser l'option.



Voir aussi

 * - autres méthodes d'import.
 * - instructions pour créer un dump.