J'ai sauvegardé toutes mes bases de données mysql avec la commande suivante
mysqldump -u root -ppasswod --all-databases | gzip > all.sql.gz
je voulais juste savoir si je pourrai restaurer toute la base de données avec la commande suivante
gunzip < alldb.sql.gz | mysql -u root -ppassword -h localhost
pouvez-vous également me dire comment sauvegarder tous les utilisateurs de mysql?
Je ne peux pas le tester car je ne suis pas sûr et je ne veux pas casser de base de données sur mon système actuel
Oui. En règle générale, pour restaurer des fichiers de sauvegarde compressés, vous pouvez procéder comme suit:
gunzip < alldb.sql.gz | mysql -u [uname] -p[pass] [dbname]
Veuillez consulter Comment sauvegarder et restaurer une base de données MySQL
Notez que l'option --all-databases
S'applique uniquement à la sauvegarde. Le fichier de sauvegarde lui-même contiendra toutes les commandes CREATE DATABASE quux;
Pertinentes pour la restauration.
Pour afficher une barre de progression lors de l'importation d'un fichier sql.gz, téléchargez pv et utilisez ce qui suit:
pv mydump.sql.gz | gunzip | mysql -u root -p
Si la commande PV n'est pas installée sur votre système, essayez la commande ci-dessous relativement
en CentOS/RHEL
yum install pv
Dans Debian/Ubunt
apt-get install pv
sous MAC
installer bv pv
Sortie quelque chose comme ça ->
pv mydump.sql.gz | gunzip | mysql -u root -p dbname
Entrer le mot de passe:
255 Mo 0:05:49 [748 ko/s] [===========>] 30%
C'est la commande que j'utilise pour sauvegarder toutes les bases de données dans MySQL:
mysqldump -u USERNAME -p --all-databases --events --ignore-table=mysql.event --extended-insert --add-drop-database --disable-keys --flush-privileges --quick --routines --triggers | gzip > "all_databases.gz"
Pour restaurer à partir d'un fichier * .gz mysqldump:
gunzip < all_databases.gz | mysql -u USERNAME -p