MySQL Enterprise Backup 8.0.21 only supports MySQL 8.0.21.
For earlier verions of MySQL 8.0, use the MySQL Enterprise Backup version with the same version number as the server.
For MySQL 5.7, use MySQL Enterprise Backup 4.1.
For MySQL 5.6, use MySQL Enterprise Backup 3.12.
Download installation files from Oracle e-delivery...
Select Product Pack -> MySQL
DatabaseSystem -> Linux x86_64
Download MySQL Enterprise Backup {version} RPM for Oracle Linux / RHEL 6 x86 (64bit)
Unpack meb-{version}-el6-x86-64bit.tar.gz to /mysql/mysql-backup
cd /mysql
unzip ${ZIPFILE}
tar xvf ${TARFILE}
ln -s /mysql/$(echo ${TARFILE} | awk -F".tar" '{ print $1 }') /mysql/mysql-backup
mv README.txt /mysql/mysql-backup
rm -f ${TARFILE} ${TARFILE}.asc ${TARFILE}.md5 ${ZIPFILE}
export PATH=/mysql/mysql-backup/bin:$PATH
Add this to the .bash_profile for the root user
vi /root/.bash_profile
CREATE USER 'backup'@'myserver';
GRANT RELOAD ON *.* TO 'backup'@'myserver';
GRANT CREATE, INSERT, DROP, UPDATE ON mysql.ibbackup_binlog_marker TO 'backup'@'myserver';
GRANT CREATE, INSERT, DROP, UPDATE ON mysql.backup_progress TO 'backup'@'myserver';
GRANT CREATE, INSERT, SELECT, DROP, UPDATE ON mysql.backup_history TO 'backup'@'myserver';
GRANT REPLICATION CLIENT ON *.* TO 'backup'@'myserver';
GRANT SUPER ON *.* TO 'backup'@'myserver';
GRANT CREATE TEMPORARY TABLES ON mysql.* TO 'backup'@'myserver';
FLUSH PRIVILEGES;
CREATE USER 'mysqlbackup'@'localhost' IDENTIFIED BY RANDOM PASSWORD;
CREATE USER 'mysqlbackup'@'node1' IDENTIFIED BY 'samepasswordasabove';
CREATE USER 'mysqlbackup'@'node2' IDENTIFIED BY 'samepasswordasabove';
CREATE USER 'mysqlbackup'@'node3' IDENTIFIED BY 'samepasswordasabove';
GRANT SELECT, RELOAD, PROCESS, SUPER, REPLICATION CLIENT
ON *.*
TO 'mysqlbackup'@'localhost',
'mysqlbackup'@'node1',
'mysqlbackup'@'node2',
'mysqlbackup'@'node2';
GRANT BACKUP_ADMIN
ON *.*
TO 'mysqlbackup'@'localhost',
'mysqlbackup'@'node1',
'mysqlbackup'@'node2',
'mysqlbackup'@'node2';
GRANT CREATE, INSERT, DROP, UPDATE
ON mysql.backup_progress
TO 'mysqlbackup'@'localhost',
'mysqlbackup'@'node1',
'mysqlbackup'@'node2',
'mysqlbackup'@'node2';
GRANT CREATE, INSERT, DROP, UPDATE, SELECT, ALTER
ON mysql.backup_history
TO 'mysqlbackup'@'localhost',
'mysqlbackup'@'node1',
'mysqlbackup'@'node2',
'mysqlbackup'@'node2';
Securely store password for mysqlbackup user...
Do this on every node in an innodb cluster so that backups still work after a failover/switchovermysql_config_editor set --login-path=mysqlbackup --user=mysqlbackup --password
GRANT CREATE, INSERT, DROP ON mysql.backup_history_old TO 'mysqlbackup'@'myserver'; # For upgrades to release 8.0.12+
GRANT CREATE, INSERT, DROP, ALTER ON mysql.backup_history_new TO 'mysqlbackup'@'myserver'; # For upgrades to release 8.0.12+
https://dev.mysql.com/doc/mysql-enterprise-backup/8.0/en/backup-history-table-update.htmlGRANT ALTER ON mysql.backup_progress TO 'mysqlbackup'@'myserver'; # For upgrades to release 8.0.19+
GRANT CREATE, INSERT, DROP ON mysql.backup_progress_old TO 'mysqlbackup'@'myserver'; # For upgrades to release 8.0.19+
GRANT CREATE, INSERT, DROP, ALTER ON mysql.backup_progress_new TO 'mysqlbackup'@'myserver'; # For upgrades to release 8.0.19+
https://dev.mysql.com/doc/mysql-enterprise-backup/8.0/en/backup-progress-table-update.html