Restaurer un dump SQL en ligne de commande
Cas d'utilisation
Lorsqu'une base de donnée est trop importante en terme de taille pour être restauré via PHPmyadmin
(exemple: visitluxembourg, lcto, toutes bases de données supérieures à 100Mo)
Pré-requis
- Connexion SSH au serveur de base de données
- Un dump SQL préparé
Attention à l'instruction de type USE database, et à la suppression des DEFINER, ... qui peuvent poser problème lors de la restauration
- Les services apache et php-fpm doivent être stoppé avant la restauration, cela entrainera une période d'indisponibilité du site web le temps de l'opération
# Arrêt des services apache et php-fpm
service apache2 stop
service php5-fpm stop
Déroulement
- Connexion au CLI MySQL sur le serveur de base de données
mysql -u root -p
Enter password:
- Affichage des bases de données présentes sur le serveur
SHOW DATABASES;
- Suppression/création de la base de données à restaurer
DROP DATABASE lft_app;
CREATE DATABASE lft_app;
- Une fois la base de donnée recréée, on peut sortir du CLI MySQL
exit;
- Il ne nous reste qu'à restaurer le dump SQL dans cette nouvelle base
mysql -u root -p < mon_dump.sql
Post-restauration
Une fois que tout est en place, nous pouvons redémarrer les services arrêtés lors des étapes précédentes
# Démarrage des services apache et php-fpm
service apache2 start
service php5-fpm start
Pas de commentaires