Une base de données est le cœur des sites internet que vous consultez. Tous en possèdent de nos jours au moins une, souvent plusieurs. Elle contient, mais surtout indexe et structure l’ensemble du « fond » d’un site (en opposition à « la forme »). Le contenu brut en somme. Par exemple, pour arriver à cet article vous pouvez cliquer dans le menu de navigation. C’est la base de données que vous interrogez alors : elle fait le lien avec ses champs correspondant à la sous-rubrique « Windows » (ou « Linux ») et vous renvoie alors tous les résultats qu’elle connait. Quand vous choisissez l’article souhaité, elle en déduit l’auteur, la date de création, les commentaires etc…car elle sait que tous ces éléments correspondent à cet article en particulier et pas un autre. Techniquement on l’interroge en SQL, via un langage interprété côté serveur (ici du PHP).
Vous pouvez donc en déduire l’importance de la bête et la nécessité d’en faire régulièrement des sauvegardes! C’est justement ce à quoi va s’intéresser ce post avec le Système de Gestion de Base de Données Relationnelles (SGBDR) MySQL, l’un des plus répandu aujourd’hui.
Sauvegarder :
MySQL intègre fort heureusement directement un outil permettant de créer une copie de votre base : mysqldump. Lancez une invite de commande et placez vous dans votre dossier d’installation de MySQL puis dans le sous-dossier « bin ». Enfin, lancez la commande :
mysqldump.exe –e –u[utilisateur-base-de-données] -p[motdepasse-utilisateur-base-de-données] [nom-base-de-données] > C:\[nom-fichier-sauvegarde].sql
J’attire votre attention sur le fait que les arguments sont directement suivis de leurs valeurs (le nom d’utilisateur est collé derrière le -u)…
Restaurer :
Après une mise à jour foireuse, un crash (panne de disque dur, piratage…) ou tout simplement une migration de serveur, on peut se servir de ce fichier et le ré-injecter avec la commande :
mysql –u[utilisateur-base-de-données] -p[motdepasse-utilisateur-base-de-données] [nom-base-de-données] < C:\[nom-fichier-sauvegarde].sql
NOTE : Sans vouloir troller, on préfère souvent installer son serveur Web sous Linux par soucis de performance/sécurité. Voici donc les commandes à lancer dans ce cas de figure :
mysqldump -u [utilisateur-base-de-données] -p [nom-base-de-données] > [nom-fichier-sauvegarde].sql
mysql -u [utilisateur-base-de-données] -p [nom-base-de-données] < [nom-fichier-sauvegarde].sql
Ici les espaces existent bien! Une fois saisies, les commandes vous demanderont bien évidemment le mot de passe d'[utilisateur-base-de-données] afin d’obtenir l’accès.
eevqtg
qk75qp