2017-05-12 2 views
1

Quelles sont les autorisations minimales requises pour qu'un utilisateur mysql effectue une sauvegarde à l'aide de mysqldump/xtrabackup? Je ne veux pas que les permissions fonctionnent comme root, mais juste assez pour effectuer une sauvegarde. C'est parce que Innobackupex vous oblige à ajouter le mot de passe sur la ligne de commande, ce qui n'est pas trop sécurisé. Donc, je voudrais créer un autre utilisateur avec pas tellement de privilèges à utiliser.MySQL Autorisation d'effectuer une sauvegarde

Répondre

1

Sur MySQL ce serait ces autorisations pour autant que je sais:

GRANT SELECT, LOCK TABLES, RELOAD, SHOW VIEW ON *.* TO 'user'@'localhost' IDENTIFIED BY 'password'; 

Notez qu'il peut varier si vous utilisez des vues, fonctions, procédures, etc.

+0

Cette commande fonctionne pour mysqldump, mais pas pour Innobackupex. J'ai également ajouté 'user'@'127.0.0.1' pour le faire fonctionner pour innobackupex, mais après avoir bien fonctionné, la commande s'est terminée avec cette erreur: 170513 10:58:35 Exécution de tables de verrouillage pour sauvegarde ... Erreur: échec pour exécuter la requête LOCK TABLES POUR BACKUP: Accès refusé; Vous devez (au moins un des) privilège (s) RELOAD pour cette opération –

+0

@TheGeorgia J'ai modifié la déclaration, elle devrait accorder des privilèges de rechargement maintenant – FMashiro

+1

Tous les privilèges dont vous avez besoin pour xtrabackup incluent SELECT, LOCK TABLES, RELOAD, TRIGGER , SUPER, CLIENT REPLICATION, AFFICHER VUE. Merci @FMashiro de m'avoir donné une direction. –