Export MySQL rapide par bases

Vous avez un didactiel ou une astuce particulière concernant un logiciel, partagez votre expérience dans cette partie.

Export MySQL rapide par bases

Messagede le Manchot Masqué » Mer 26 Juil 2017, 23:59

Ce qui suit est une proposition de script d'exportation, utile à ceux qui manipulent beaucoup de bases MySQL(/MariaDB), et qui veulent rapidement les sauvegarder dans un dossier (ici sql/).

A adapter évidemment selon votre configuration, vos besoins, et les aspects de sécurité propres à votre environnement (utiliser root chez les puristes, c'est le mal absolu...).

Code: Select All Code
# cat mysql.dump.each.database.sh
#!/bin/bash

PATH=$PATH:/usr/bin
NOW=$(date +'%Y%m%d_%H%M%S')
DST="sql/"

echo "Entrez le mot de passe de root pour exporter vos bases :";
read password

mysql -u root --password=${password} -B -e 'show databases' > databases.list.txt

echo "Liste des bases présentes sur le serveur :"
cat databases.list.txt

for i in $(cat databases.list.txt); do
   if [ "$i" != "Database" ] && [ "$i" != "mysql" ] && [ "$i" != "information_schema" ] && [ "$i" != "performance_schema" ] && [ "$i" != "sys" ] && [ "$i" != "phpmyadmin" ]; then
      mysqldump --default-character-set=utf8 -u root --password=${password} "${i}" > "${DST}/${i}.${NOW}.mysql";
   fi
done
Avatar de l’utilisateur
le Manchot Masqué
Administrateur du site
 
Messages: 334
Inscription: Lun 26 Mai 2008, 21:05
Localisation: Guebwiller
Distribution: Debian, Ubuntu
Niveau: Moitié plein !

Retourner vers Sur un logiciel

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 2 invités

cron