Manual:Restoring a wiki from backup/fr

Le wiki doit être sauvegardé régulièrement, même s'il vous n'avez jamais besoin de le restaurer : les sauvegardes rassurent. D'un autre côté la sauvegarde est inutile si vous ne pouvez pas restaurer, et s'entraîner à restaurer enlève l'angoisse à venir. D'où ces instructions.



Versions et mise à jour
Les instructions de cette page sont en majorité applicables à pratiquement toutes les versions de MediaWiki. Vous pouvez restaurer la base de données vers une version plus récente de MediaWiki, mais assurez-vous de bien exécuter le script de mise à jour. Par contre il ne vous est pas permis de restaurer une base de données issue d'une version récente, dans une version plus ancienne du logiciel.



Transfert de fichiers
A moins que vous ayez un accès direct au serveur qui héberge votre wiki (et même dans ce cas) il vous faudra choisir une méthode pour transférer les fichiers :


 * Secure copy with SCP or WinSCP
 * SSH File Transfer Protocol (SFTP)
 * Using a FTP client.
 * The hosting company might provide a file manager interface via the web browser, check with your provider.
 * Some other method, there is a list of these at List of file transfer protocols

Vue d’ensemble

 * 1) recréer la base de données, l'utilisateur avec ses droits
 * 2) importer la sauvegarde de la base de données
 * 3) importer les fichiers MediaWiki
 * 4) vérifier le fichier de configuration
 * 5) tester



Recréer la base de données, les utilisateurs et les droits
Sur le serveur où vous restaurez MediaWiki, assurez-vous d'avoir


 * 1) une instance fonctionnelle de MySQL
 * 2) un utilisateur MySQL avec les droits suffisants dans le cas où vous ne pourriez pas utiliser l'utilisateur root de MySQL

Si vous restaurez à partir d'une sauvegarde suite à une base de données corrompue, vous devez réinstaller MySQL ! Une fois que MySQL fonctionne correctement, créez une nouvelle base de données MySQL et attribuez les droits de votre compte utilisateur sur la base de données comme listés ci-dessous. Vous pouvez consulter la documentation MySQL, la documentation du panneau de contrôle de votre fournisseur d'hébergement, ou la documentation de tout autre utilitaire que vous utilisez, pour vous renseigner sur la manière de faire cela. A partir de l'invite MySQL et en tant qu'utilisateur MySQL root, vous pouvez :

CREATE DATABASE wikidb; CREATE USER wikidb_user IDENTIFIED BY &#39;wikidb_userpassword&#39;; USE wikidb; GRANT SELECT, UPDATE, INSERT, DELETE, ALTER, CREATE, INDEX, DROP, LOCK TABLES, USAGE ON wikidb.* TO wikidb_user;



Importer la sauvegarde d'une base de données
Puis importez la sauvegarde de votre base de données. Cela va créer les tables de la base de données et les remplir avec les données. Importing takes a variable amount of time, depending upon the number of pages, users, edits, etc. in your wiki.

Méthodes


A partir de la ligne de commande en utilisant
S'il existe déjà une base de données et que vous souhaitez la remplacer entièrement par le contenu de la sauvegarde. Pour supprimer la base de données :

mysqladmin -u wikidb_user -p drop wikidb

adapter  et   selon le cas. Le paramètre  sert à vous demander le mot de passe.

Ensuite pour créer une nouvelle base de données :

mysqladmin -u wikidb_user -p create wikidb

For example after backing up with mysqldump: mysqldump --default-character-set=binary --user=wikidb_user --password=wikidb_userpassword wikidb > dump_of_wikidb.sql
 * 1) Don't do this now: This is how you might have created a backup earlier.
 * 1) The wikidatabase wikidb from which you backed up may have a different name
 * 2) than the wikidatabase wikidb you've created above. Of course wikidb_user and
 * 3) wikidb_userpassword may be different as well.

Make sure to specify the correct character set or the restore may fail, check  to find out which character set it is.

Pour importer  à partir de la ligne de commande faites simplement :

mysql -u wikidb_user -p wikidb < dump_of_wikidb.sql

puis si c'est nécessaire faites :

php wikifolder/maintenance/update.php
 * 1) Most people name their wikifolder simply "w", making this pathname
 * 2) something like "htdocs/w/maintenance/update.php"

Voir aussi Exécuter les commandes SQL à partir d'un fichier texte



Avec le navigateur pour phpMyAdmin
Open the browser to your phpMyAdmin, login, choose the wiki database. (Check LocalSettings.php if you're not sure). Select Structure, localhost, Your_Table. Select CheckAll. Dans le menu déroulant, sélectionner 'Drop', puis 'Ok' pour effacer la table. Cliquer sur 'Importer', sélectionner 'Browse', choisir votre fichier SQL et l'importer. Press Go.

Remember to also restore file system components of the wiki that might be required, eg. images, logo, and extensions, (see above under mysql).

Depending on timeout settings and the size of the SQL file, it may take multiple attempts to import everything. Failure to complete the import may leave the database in an inconsistent state, e.g. with missing revisions.



A partir d'un dump XML
Article principal : 

Pour importer un Special:MyLanguage/Manual:DumpBackup.phpdump XML dans un wiki, utiliser l'outil en mode ligne de command. Faire :

php wikifolder/maintenance/importDump.php --dbpass wikidb_userpassword --quiet --wiki wikidb path-to-dumpfile/dumpfile.xml php wikifolder/maintenance/rebuildrecentchanges.php

Remplacer,  et   selon les besoins.

Puis utiliser pour importer les images : php wikifolder/maintenance/importImages.php wikifolder_backup/images 

Importer les fichiers MediaWiki
Next, restore your backup of the MediaWiki filesystem: this is the final "large" step in the restore process.

If you followed the backup manual instructions, and backed up the entire directory, this will include the images and extensions directories, plus custom skins, etc. and the configuration file.
 * If you backed up only portions of the directory, e.g. images, extensions, etc. then you will need to first upload/copy a fresh install of the MediaWiki files, then transfer the backed-up directories and files into the correct locations in the new filesystem.



Pour effacer et restaurer le système de fichiers du wiki
Remember to also restore the file system components of the wiki that might be required, eg. images, logo, and extensions. Especially to edit  to check everything is correct. A sequence of Linux commands to wipe and restore the wiki file system could look like this:

wget http://download.wikimedia.org/mediawiki/ /mediawiki-.tar.gz tar -xvzf mediawiki-.tar.gz rm mediawiki-.tar.gz rm -fR wikifolder/ mv mediawiki- wikifolder rm -fR wikifolder/extensions/ cp -R wikifolder_backup/extensions wikifolder/extensions

Open the wiki from the browser and click on the Set up the wiki first link. Voir pour les détails. Si besoin, vous pouvez exécuter l'installeur  en mode ligne de commande. After this is done edit  to suit the fresh install, restoring lines for extensions, etc. Restore from backup any other files, such as a custom logo and favicon to the correct paths.

If you've not installed as a root Linux/Unix user and the images and thumbnails don't work, you'll need to fix the owner or permissions recursively on the folder that has the uploaded images, usually in wikifolder/images.

Vérification du fichier de configuration
La tâche finale comprend la vérification et éventuellemnt la modification du fichier.


 * If you are restoring onto the same server from which you backed up, you probably need not change anything.
 * If you are restoring onto a new server (i.e., if you are moving or duplicating the MediaWiki), certain entries will almost undoubtedly require changing, and you may need to change the database connection information as well.

Vérifiez les options de configuration suivante :

Pensez aussi à vérifier les chemins vers diff3, ImageMagick, etc.

Test
À ce stade, essayez d'utiliser le wiki du nouveau serveur. Connectez-vous en tant que sysop et qu'utilisateur régulier pour vérifiez que l'affichage, la création et l'édition des pages et le téléversement des fichiers fonctionnent toujours. Corrigez tous les problèmes signalés par PHP ou MediaWiki lui-même.



Problèmes fréquents
Après avoir fait le transfert, des avertissements PHP peuvent apparaître disant que certains fichiers ne sont pas accessibles. Il est probable que ce soit le plus souvent causé par T37472 : La colonne md_deps de la table module-deps contient les chemins absolus des fichiers; ils sont utilisés pour localiser les images et les fichiers LESS desquels dépend le CSS. Ces chemins seront cassés si le wiki est déplacé vers un autre répertoire ou mis sur un autre serveur.

En attendant que ce bogue soit résolu, vous pouvez utiliser ce contournement pour corriger manuellement les entrées erronnées de la table module_deps : Cela peut être utilisé pour actualiser les segments erronés du chemin et corriger l'erreur.



Voir aussi

 * (si vous n'avez pas de sauvegarde valide)
 * Script: Fullsiterestore
 * (si vous n'avez pas de sauvegarde valide)
 * Script: Fullsiterestore
 * Script: Fullsiterestore
 * Script: Fullsiterestore



Liens externes

 * Instructions détaillées sur la 'Migration vers un nouveau serveur'