Sto usando lo automysqlbackup
script per scaricare i miei database mysql, ma voglio avere un utente di sola lettura per farlo in modo da non memorizzare la mia password del database di root in un file di testo normale.
Ho creato un utente in questo modo:
grant select, lock tables on *.* to 'username'@'localhost' identified by 'password';
Quando corro mysqldump
(attraverso automysqlbackup
o direttamente) ricevo il seguente avviso:
mysqldump: Got error: 1044: Access denied for user 'username'@'localhost' to database 'information_schema' when using LOCK TABLES
Sto sbagliando? Ho bisogno di sovvenzioni aggiuntive per il mio utente di sola lettura? O può solo root
bloccare il information_schema
tavolo? Cosa sta succedendo?
Modificare:
GAH e ora funziona. Potrei non aver eseguito FLUSH PRIVILEGES in precedenza.
A parte questo, con quale frequenza si verifica automaticamente?
Modificare:
No, non funziona. L'esecuzione mysqldump -u username -p --all-databases > dump.sql
manuale non genera un errore, ma non scarica information_schema. automysqlbackup
genera un errore.
mysqldump
: mysqldump non scarica il database INFORMATION_SCHEMA. Se si denomina esplicitamente quel database sulla riga di comando, mysqldump lo ignora silenziosamente Sembra che la pagina man sia obsoleta (e genera un avviso) o cheautomysqlbackup
sta eseguendo alcuni controlli aggiuntivi sul dump perinformation_schema
. Non sono sicuro di quale sia, ma non è correlato alle sovvenzioni degli utenti.