MySQL 要從 Slave 做 Master(Slave) → Slave 2,使用 XtraBackup 備份,需要 MySQL 額外的權限~
MySQL 使用 XtraBackup 支援 slave-info 等參數的權限授權
XtraBackup 若直接從 Master 備份,用最標準的參數即可,但是若從 Slave 要備份的話,就會需要加上 --slave-info --safe-slave-backup 的參數
- 註1:--slave-info 需用 GTID 或者加上 --safe-slave-backup 的參數才可使用
- 註2:--safe-slave-backup:備份期間會中斷 SQL_thread 和檢查 Slave_open_temp_tables 是否為0
但是加上 --slave-info 的參數,MySQL 的 user(假設 user 是 backup) 就會需要額外的權限
MySQL 5.6
- GRANT RELOAD ON . TO 'backup'@'localhost';
- GRANT PROCESS ON . TO 'backup'@'localhost';
- GRANT REPLICATION CLIENT ON . TO 'backup'@'localhost';
- GRANT LOCK TABLES ON . TO 'backup'@'localhost';
MySQL 5.7
- GRANT SUPER ON . TO 'backup'@'localhost';
MySQL 8.0
- GRANT REPLICATION SLAVE ADMIN ON . TO 'backup'@'localhost';