web-dev-qa-db-fra.com

Sauvegarder les utilisateurs de MySQL

Comment sauvegarder les utilisateurs MySQL et leurs privilèges? 

Quelque chose comme mysqldump? 

Je cherche quelque chose comme:

mysqldump -d -u root -p MyTable > Schema.sql
27
Cherian
mysql -BNe "select concat('\'',user,'\'@\'',Host,'\'') from mysql.user where user != 'root'" | \
while read uh; do mysql -BNe "show grants for $uh" | sed 's/$/;/; s/\\\\/\\/g'; done > grants.sql
36
spirit

Vous pouvez sauvegarder la base de données mysql en utilisant

mysqldump -u root -p mysql > mysql.sql

et restaurer la base de données mysql en exécutant 

 mysql -uroot -p mysql < mysql.sql

N'oubliez pas de 

FLUSH PRIVILEGES

après avoir restauré le vidage.

J'espère que ça aide...

21
Shubhansh

Jusqu'à présent, mon expérience avec MySQL ne permettait pas de sauvegarder les utilisateurs et leurs privilèges via une ligne de commande.

Mais je peux sauvegarder ces données critiques en sauvegardant mysql

mysqldump -u root -p mysql > mysql.sql
14
simplyharsh

Les utilisateurs et les privilèges sont stockés dans le nom de base de données 'mysql'. Vous pouvez utiliser mysqldump pour sauvegarder les tables dans la base de données nommée 'mysql'.

6
Zoredache

Percona a un excellent outil pour cela. pt-show-grants videra les utilisateurs et leurs autorisations afin que vous puissiez les recharger facilement.

https://www.percona.com/doc/percona-toolkit/LATEST/pt-show-grants.html

0
Josh Wilson