Depuis très longtemps sur les plateformes xAMP (LAMP, WAMP ou MAMP) nous utilisons phpMyAdmin pour manipuler aisément le SGBD MySQL.
Problématique
Mais voilà, lorsque la base de données commence à être vraiment volumineuse (plusieurs centaines de Mo), vous risquez de rencontrer plusieurs problèmes à l’export et surtout à l’import de votre base de données si vous procédez à l’aide de phpMyAdmin.
A l’export, le traitement risque d’être assez long.
A l’import si votre environnement n’est pas correctement configuré, au niveau PHP (post_max_size et upload_max_filesize), vous risquez de ne pas pouvoir télécharger le fichier et ensuite, comme pour l’export, le traitement va être assez long vous donnant l’impression de ne jamais se terminer.
NB : plusieurs centaines de megaoctets, cela peut arriver très vite avec une base de données d’un site e-commerce mais également avec un simple blog ou vous êtes très productif en nombre d’articles et que ceux-ci sont lourdement commentés.
Solution
La solution consiste donc à effectuer la sauvegarde (export) et la restauration (import) de votre base de données en ligne de commande.
MySQL fournit pour cela
Pour la sauvegarde (export) :
1 |
mysqldump --host=serveur_sql --user=nom_utilisateur --password=mot_de_passe nom_de_la_base > nom_du_ fichier__sauvegarde_de_la_base.sql |
Pour la restauration (import) :
1 |
mysql --host=serveur_sql --user=nom_utilisateur --password=mot_de_passe nom_de_la_base < nom_du_ fichier__sauvegarde_de_la_base.sql |
Pré-requis : bien sûr, il faut pouvoir exécuter des commandes sur votre hébergement. Cela nécessite un accès SSH à celui-ci.
Pour une sauvegarde avec compression du fichier :
1 |
mysqldump --host=serveur_sql --user=nom_utilisateur --password=mot_de_passe nom_de_la_base | gzip > nom_du_ fichier__sauvegarde_de_la_base.gz |
Une réponse sur « Mémo sauvegarde et restauration MYSQL »
[…] Navigation des articles ← Précédent […]