Manual:ImportDump.php/fr


 * Les méthodes recommandées sont à 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. A cause de cette fonctionnalité, si une page importée est plus ancienne que la page existante, seule l'historique de la page sera remplie mais la nouvelle version ne sera pas remplacée par l'ancienne. Si ce comportement n'est pas souhaité, il faut d'abord supprimer les pages existantes avant d'importer, ou les modifier de sorte à revenir à la dernière version importée signalée dans l'historique.

Le wiki reste utilisable durant l'import.

Le wiki semble désorganisé et il manque la plupart des modèles; pratiquement tous les liens sont en rouge mais la situation s'améliore au fil de la progression des imports.

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
Avant d'exécuter importImages.php vous devez d'abord vous placer dans le répertoire maintenance dans lequel il se trouve.



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.

Si les autres méthodes ne fonctionnent pas, voici des pistes pour utiliser importDump.php pour importer les gros wikis afin de réduire au maximum le temps d'attente...



Parallèliser les imports
Vous pouvez essayer d'exécuter importDump.php plusieurs fois simultanément à partir du même dump en utilisant l'option ...

Lors d'un essai sous Ubuntu, le script a été lancé plusieurs fois simultanément (sur le même dump décompressé) dans des fenêtres séparées en utilisant l'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: Cette expérience n'a pas été faite en lançant plusieurs instances sans le paramètre --skip-to afin d'éviter un blocage potentiel -- si vous faites ceci sans utiliser  , ou que vous laissez les instances interagir entre elles, veuillez fournir vos résultats et commentaires sur la page de discussion. Dans cette expérience 2 des fenêtres on interagit sans fournir d'erreur. Les instances du script ont semblé chacune revenir en arrière.

Avec   la situation est différente du cas habituel; les incréments de progression ne sont pas affichés durant les sauts mais le curseur clignote simplement. Après quelques minutes, le rapport de progression commence à s'afficher.



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.