MySQL | Creare utente per backup
Updated at: 25/05/2017


Se si vuole creare un utente che possa eseguire i bakcup di tutti i DB presenti su un server, ma che non possa - giustamente - modificarli, quesi sono gli step da eseguire:
$ mysql -uroot -p
CREATE USER 'backup_usr'@'localhost' IDENTIFIED BY 'password';
GRANT SELECT, SHOW DATABASES, LOCK TABLES, SHOW VIEW, EVENT ON *.* TO 'backup_usr'@'localhost';
FLUSH PRIVILEGES;
In particolare è importante dare il permesso SHOW VIEW altrimenti se un DB presentasse delle view, il dump andrebbe in errore... Per verificare quali sono i privilegi dell'utente appena creato:
SELECT * FROM information_schema.user_privileges WHERE GRANTEE LIKE '%backup_usr%';