Един от най-лесните начини, които открих за експортиране на потребители, е използването на инструмента на Percona pt-show-grants. Комплектът инструменти на Percona е безплатен, лесен за инсталиране и лесен за използване, с много документация. Това е лесен начин да покажете на всички потребители или конкретни потребители. Той изброява всичките им грантове и резултати в SQL формат. Ще дам пример как ще покажа всички грантове за test_user:
shell> pt-show-grants --only test_user
Примерен изход на тази команда:
GRANT USAGE ON *.* TO 'test_user'@'%' IDENTIFIED BY PASSWORD '*06406C868B12689643D7E55E8EB2FE82B4A6F5F4';
GRANT ALTER, INSERT, LOCK TABLES, SELECT, UPDATE ON `test`.* TO 'test_user'@'%';
Обикновено пренасочвам изхода във файл, за да мога да редактирам това, което ми трябва, или да го заредя в mysql.
Като алтернатива, ако не искате да използвате инструмента Percona и искате да направите дъмп на всички потребители, можете да използвате mysqldump по този начин:
shell> mysqldump mysql --tables user db > users.sql
Забележка:--flush-privileges няма да работи с това, тъй като цялата db не се изхвърля. това означава, че трябва да го стартирате ръчно.
shell> mysql -e "FLUSH PRIVILEGES"