Manual:Upgrading/fr



Survol
Tout d'abord, lisez le fichier texte UPGRADE inclus dans MediaWiki.


 * 1) Vérifier les prérequis
 * 2) Lire les notes de version
 * 3) Sauver les fichiers et la base de données
 * 4) Mettre en place les nouveaux fichiers
 * 5) Faire tourner le script de la mise à jour de la base données
 * 6) Mettre à jour les extensions
 * 7) Vérifier la mise à jour

Vérifier les prérequis
MediaWiki requiert :

PHP

 * PHP 5.2.3 ou ultérieur
 * Plusieurs versions précédentes supportaient PHP 5.2.3 et ultérieur, à l'exception de la version 5.3.1, qui a des bogues empêchant MediaWiki de fonctionner correctement.

SGBD

 * MySQL ou ultérieur
 * La version 3.x n'est plus supportée depuis MediaWiki 1.6.x
 * La version 4.x n'est plus supportée depuis MediaWiki 1.19

Ou


 * PostgreSQL 8.3 ou ultérieur
 * Voir aussi Mise à jour de Postgres

Lire les notes de version
Dans le fichier compressé qui contient MediaWiki, ou les fichiers exportés depuis Git, il y a un certain nombre de fichiers nommés avec des lettres capitales, un de ceux-là contient les Notes de version (wiki). C'est le moment de l'ouvrir et de découvrir tout ce qui a changé dans cette version.

Sauvegarder les fichiers et la base de données

 * Instructions complètes : Manuel sur la sauvegarde de wiki

Bien que les scripts de mise à jour soint bien maintenus et robustes, les choses peuvent malgré tout tourner au vinaigre. Avant de procéder à la mise à jour du script de base de données, faites une sauvegarde du wiki qui comprendra la base de données et les fichiers :


 * le contenu du wiki, depuis la base de données. C'est une bonne idée de créer un dump XML en plus du dump SQL de la base de données.
 * MySQL :
 * dump SQL : mysqldump --user=xxx --password=xxx --all-databases > fichier.sql
 * dump XML : mysqldump --user=xxx --password=xxx --all-databases --xml > fichier.xml
 * PostgreSQL :
 * sortie pour pg_restore : pg_dump --create -Fc -i votrewiki > votrewiki.db.dump
 * SQLite :
 * php maintenance/sqlite.php --backup-to nomfichier
 * les images et les autres fichiers média (tout le contenu du répertoire images)
 * les fichiers de configuration LocalSettings.php et AdminSettings.php (si présent)
 * les fichiers programme de MediaWiki, y compris tous les habillages et extension, surtout si vous les avez modifiés.

Utilisation d'un package tarball
Si vous utilisez un package tarball, décompressez le fichier sur le serveur où tourne l'ancienne version de MediaWiki. Il se peut que vous ayez besoins de taper les lignes de commande en tant que sudo si vous n'avez pas les pleins privilèges de gestion des répertoires d'installation du wiki sous votre compte courant. Quand vous décompressez le package tarball, normalement un nouveau répertoire pour la nouvelle version du wiki sera créé et vous devrez copier les nouveaux fichiers et répertoires dans votre répertoire wiki actuel. Si vous voulez tout faire en une seule fois, faites plutôt ceci :

$ tar xvzf mediawiki-.tar.gz -C /chemin/de/votre/wiki/ --strip-components=1

Sur les anciennes distributions Linux (par exemple RHEL/CentOS 4.x), faites ceci :

$ tar xvzf mediawiki-.tar.gz -C /chemin/de/votre/wiki/ --strip-path=1

Les personnes qui utilisent une ancienne version de tar (par exemple GNU tar 1.13.x) qui ne dispose pas des drapeaux --strip-components</tt> ou --strip-path</tt> peuvent décompresser l'archive sans l'option -C</tt> puis copier de façon récursive le contenu du dernier package dans la structure précédente du répertoire wiki, comme suit :

$ tar xvfz mediawiki-.tar.gz $ cp -r mediawiki-/* /chemin/de/votre/wiki/

Les utilisateur d'(Open)Solaris devront utliser gstar, ou :

$ gzip -dc mediawiki-.tar.gz | tar xf -

Utilisateurs Windows : utilisez 7zip pour extraire le tarball.

Utilisateurs FTP : Extrayez les fichiers localement et téléversez les répertoires et fichiers vers le serveur.

Utilisation de Git
Si vous utilisez Git, exportez les fichiers dans un endroit propre. Remplacez tous les fichiers existants avec les nouvelles versions, en préservant la structure des répertoires. Le code du noyau est maintenant à jour.

Fichiers restants qui pourraient provoquer des erreurs
Si vous n'utilisez pas les profils, mais disposez d'un fichier  dans le répertoire racine de MediaWiki, vous pouvez recevoir des erreurs faisant référence à. L'effacement ou le renommage du fichier  devrait corriger cette erreur. Le fichier, situé aussi dans le répertoire racine de MediaWiki, peut servir en tant que modèle que vous pouvez activer si vous voulez définir des profils à l'avenir.

Lancez le script de la mise à jour
Vous pouvez mettre à jour MediaWiki soit depuis l'invite de commande ou depuis le web. Si vouis avez un accès sur votre serveur, la mise à jour depuis l'invite de commande est recommandé, étant donné que cela réduit le risque que le processus de mise à jour soit interrompu par un timeout ou un réinitialisation de la connexion.

Ligne de commande
Depuis un invite de ligne de commandes ou un shell SSH ou similaire, changer le répertoire courant pour être dans le dossier maintenance</tt> et exécuter le script suivant :

$ php update.php

Notez que pour des installations simples sur Windows (par exemple avec XAMPP) : assurez-vous tout d'abord que votre serveur web (Apache par exemple) et votre base de données (MySQL par exemple) tournent. Puis lancez update.php : faites un clic droit dessus, sélectionnez Ouvrir avec, et sélectionnez PHP.exe. L'invite de commande qui en résulte se fermera sans doute automatiquement quand le processus de mise à jour sera terminé.

MediaWiki va inspecter le schéma de la base de données, et le mettre à jour pour qu'il puisse être utilisable avec le nouveau code de MediaWiki, en ajoutant des tables et des colonnes si nécessaire.

Que faire si vous avez l'erreur "No superuser credentials"
Dans le cas où le script s'interrompt avec le message suivant :

"No superuser credentials could be found. Please provide the details of a user with appropriate permissions to update the database. See AdminSettings.sample for more details" (Aucun crédit super-utilisateur n'a été trouvé. Fournissez SVP les détails d'un utilisateur disposant des autorisations nécessaires pour mettre à jour la base de données. Voir AdminSettings.sample pour plus de détails.)

Ceci veut dire que vous devrez vérifier que vous avez défini $wgDBadminuser and $wgDBadminpassword dans votre fichier LocalSettings.php (dans le répertoire principal). Il s'agit de l'utilisateur et du mot de passe nécessaire au script pour qu'il puisse accéder à la base de données. (Note : avant MediaWiki 1.16, ces variables étaient situées dans . Ce fichier a été retiré dans la 1.16 et les variables concernées ont été déplacées dans LocalSettings.php.)

Que faire si vous avez l'erreur "unexpected T_STRING"
Des lancements individuels de Update.php depuis l'invite de commande peut donner l'erreur suivante : syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' \ in ~/maintenance/commandLine.inc on line 13

Cette erreur se produit si update.php est lancé depuis php4.

Ceux qui ont leur site hébergé par des fournisseurs qui propose à la fois php4 et php5 doivent suivre les étapes suivantes :
 * 1) depuis l'invite de commande, entrez la commande 'whereis php5'
 * 2) une fois que vous avez trouvé l'emplacement du chemin vers php5, listez les contenus du répertoire php5/bin
 * 3) une fois que vous avez déterminé le nom de l'exécutable php (soit php, soit php5), tapez le chemin complet pour exécuter update.php

Ci-dessous un exemple : $ whereis php5 $ ls -la /usr/local/php5/bin $ /usr/local/php5/bin/php update.php

Que faire si vous avez l'erreur 'register_argc_argv is set to false'
Quelquefois, vous pouvez avoir cette erreur :

Cannot get command line arguments, register_argc_argv is set to false

register_argc_argv=true
 * 1) Allez sur ~/maintenance. Soit vous éditez le fichier 'php.ini' existant, soit vous le créez.
 * 2) Ajoutez une ligne comme suit :
 * 1) Relancez php update.php

Utilitaire de mise à jour Web

 * Voir aussi update.php

Si votre base de données est déjà importante et est utilisée largement en production, vous ne devriez pas utiliser l'utilitaire de mise à jour Web. Dans ce cas, vous devriez utiliser update.php depuis l'interface de ligne de commande (et non depuis le web). La notion de "trop gros" dépend de votre serveur (par exemple sur ses performances, le chargement et le temps de réponse maximum de l'exéctution PHP permet au script de se lancer). Si votre wiki est trop gros pour l'utilitaire de mise à jour web et que votre fournisseur n'autorise pas l'accès à la ligne de commande, vous aurez besoin de migrer votre wiki vers un compte d'hébergement qui dispose d'un accès au shell;


 * 1) Faites toujours une sauvegarde avant d'exécuter la maintenance de la base de données.
 * 2) Naviguez sur /mw-config/</tt>. Par exemple, si votre wiki se trouve à  http://exemple.org/w/index.php </tt>, naviguez sur  http://exemple.org/w/mw-config/ </tt>.
 * 3) Sélectionnez votre langue et cliquez sur continuer.
 * 4) L'installation existance devrait être détectée. Suivez les instruction affichées à l'écran pour la mettre à jour. Si l'on demande l'"upgrade key" (clé de mise à jour), ouvrez votre fichierLocalSettings.php et recherchez la clé assignée à $wgUpgradeKey.

Mise à jour des extensions
Certaines extensions ont été mises à jour afin de fonctionner avec la nouvelle version de MediaWiki. Assurez-vous de mettre à jour ces extensions avec leurs dernières versions. Il se peut que vous ayez à faire des mises à jour manuelles pour personnaliser les extensions.

Vérification de la mise à jour
Une fois la mise à jour terminées, parcourez le wiki et vérifez que les opérations suivantes fonctionnent comme prévu :


 * la visualisation des pages
 * la modification des pages
 * le téléversement d'un fichier

Allez sur Special:Version et vérifiez que le numéro de version affiché est correct et que les extensions sont bien présentes.