Flux RSS
29 déc 2008

Restaurer facilement une grosse base de donnée MySQL avec BigDump

Auteur: aDy | Classé dans: Tutos MySQL

Mieux vaut tard que jamais, je vous propose une astuce pour résoudre un problème récurent : Restaurer le dump (la sauvegarde) d’une grosse base de donnée MySQL , suite à une migration d’un site par exemple.

Ce petit tutoriel s’adresse à ceux qui ne possèdent pas un accès SSH (qui n’est en général pas disponible sur un serveur mutualisé).

Il existe une alternative qui serait de découper le dump en plusieurs petits fichiers, afin de passer par phpMyAdmin par exemple et y restaurer les fichiers à la main, doucement, très doucement… étant donné que la taille maxi d’un fichier à uploader via ce dernier est limité à 2mo… Donc si votre base de donnée fais plusieurs dizaines de mega, bonjour la corvée !

Je vous propose une alternative qui a fais ses preuves, et dont je me suis servi plusieurs fois avec succès, je veux parler de Bigdump.

BigDump est un script PHP, mélangé à de l’Ajax, qui se débrouille d’ouvrir votre fichier *.sql et de lancer les requêtes à MySQL en outrepassant les limites de PHP (temps d’éxécution du script, taille maximale d’un fichier…).

Utilisation :

1) Téléchargez le script BigDump ici ou (dernière version en date lorsque cet article a été écrit : 0.29b)

(UPDATE 23/11/2011 : Télécharger ici BigDump 0.34b)

2) Editez le script « bigdump.php » avec le bloc-notes afin d’indiquer :

- Vos paramètres de connexion à la base de donnée :

// Database configuration
 
$db_server   = 'votre-serveur-MYSQL';
$db_name     = 'nom-utilisateur';
$db_username = 'nom-de-la-base-de-donnee';
$db_password = 'mot-de-passe';

- Et l’encodage des caractères (utf8 ou autres) :

// Connection character set should be the same as the dump file character set (utf8, latin1, cp1251, koi8r etc.)
// See http://dev.mysql.com/doc/refman/5.0/en/charset-charsets.html for the full list
 
$db_connection_charset = 'utf8';

Sauvegardez le fichier « bigdump.php« .

2) Créez un dossier nommé par exemple « dump » à la racine de votre FTP.

3) Placez dans ce même dossier le script « bigdump.php » accompagné de votre sauvegarde .sql que vous allez renommer en « dump.sql » pour plus de clarté.

(Attention, même si la plupart des bons clients FTP d’aujourd’hui le font automatiquement, veillez à uploader le script « bigdump.php » et votre sauvegarde « dump.sql » en « TEXT MODE« . Si vous avez opté pour une compression de votre sauvegarde de votre dump en GZip, vous devez uploader « dump.gz » en « BINARY MODE« .

4) Lancez le script => http://www.votre-site/dump/bigdump.php

5) Vous constatez que votre fichier .sql est detecté, lancez la procédure de restauration :

Tutoriel BigDump : Capture 01

Cliquez sur "Start Import"

06) Attendez de voir le message de confirmation pour être sûr que tout ce soit bien déroulé :

Tutoriel BigDump : Capture 02

Restauration terminée

La progression est visible en temps réel (nombre de requêtes déjà effectuées, pourcentage du fichier traité …), mais n’ayez crainte si d’un coup tout bloque pendant quelques temps, cela arrive et pour ma part 100% de succès à chaque coup.

A gardez sous le coude ;)

BigDump 0.34b (Update 23/11/2011 : 0.29b à 0.34b)
TELECHARGER
Lien :

Site officiel de BigDump


Tags : , , , ,

Article posté le Lundi 29 décembre 2008 à 21:03.
Classé dans la catégorie Tutos MySQL.

5 commentaires pour “Restaurer facilement une grosse base de donnée MySQL avec BigDump”

  1. TiB a dit:
    Surfe sur Google Chrome Google Chrome 2.0.172.33 via Windows Windows XP.

    Bravo, je vais le modif un peu, mais c’est parfaitement ce qu’il me fallait ! :)

  2. Djib's a dit:
    Surfe sur Mozilla Firefox Mozilla Firefox 3.6.3 via Mac OS X Mac OS X 10.

    Je viens de migrer ma base de donnees sous wordpress, mais maintenant j’ai un probleme pour les accents dans mes articles.

    le charset par défaut de bigdump ne doit pas être le bon. lequel me conseillez vous svp?

  3. Wiwii a dit:
    Surfe sur Mozilla Firefox Mozilla Firefox 4.0.1 via Mac OS X Mac OS X 10.

    C’est parfait comme script !

  4. mariang a dit:
    Surfe sur Mozilla Firefox Mozilla Firefox 4.0.1 via Windows Windows 7.

    extraordinaire, juste ce qu’il me fallait :wub:

  5. Razerstyle a dit:
    Surfe sur Mozilla Firefox Mozilla Firefox 9.0.1 via Windows Windows 7.

    Petite rectification, tu as inversé les 2 lignes suivantes :w00t: :

    $db_name = ‘nom-utilisateur’;
    $db_username = ‘nom-de-la-base-de-donnee’;

    Correction:

    $db_name = ‘nom-de-la-base-de-donnee’;
    $db_username = ‘nom-utilisateur’;

    Sinon très bon tuto !

Laisser un commentaire

Emoticons Smile Grin Sad Surprised Shocked Confused Cool Mad Razz Neutral Wink Lol Red Face Cry Evil Twisted Roll Exclaim Question Idea Arrow Mr Green Face Happy Heart Kissing Ninja Pinch Sideways Silly Sleeping Tongue