Install and Configure mysqlbackup in Mysql Enterprise Edition

Install and Configure mysqlbackup in Mysql Enterprise Edition

When you are using MySQL Enterprise Edition ,You can check online utility mysqlbackup for taking online backup for the MySQL backup. In this blog, We will discuss about installation and configuration of the mysqlbackup. 

1) Download the mysqlbackup rpm from the oracle.support.com

2) Install mysqlbackup on the server using below command

dpkg -i mysql-commercial-backup_*.deb



3) Create backup admin user for taking backup.

CREATE USER 'backupadmin'@'localhost' IDENTIFIED BY '**************';

GRANT SELECT ON *.* TO 'backupadmin'@'localhost';

GRANT BACKUP_ADMIN ON *.* TO 'backupadmin'@'localhost';

GRANT SELECT ON performance_schema.variables_info TO 'backupadmin'@'localhost';

GRANT SELECT ON performance_schema.log_status TO 'backupadmin'@'localhost';

GRANT RELOAD ON *.* TO 'backupadmin'@'localhost';

GRANT CREATE, INSERT, DROP, UPDATE ON mysql.backup_progress TO 'backupadmin'@'localhost';

GRANT CREATE, INSERT, DROP, UPDATE, SELECT, ALTER ON mysql.backup_history TO 'backupadmin'@'localhost';

GRANT REPLICATION CLIENT ON *.* TO 'backupadmin'@'localhost';

GRANT SUPER ON *.* TO 'backupadmin'@'localhost';

GRANT PROCESS ON *.* TO 'backupadmin'@'localhost';

GRANT SELECT ON performance_schema.replication_group_members TO 'backupadmin'@'localhost';

GRANT LOCK TABLES, SELECT, CREATE, DROP, FILE ON *.* TO 'backupadmin'@'localhost';

GRANT CREATE, INSERT, DROP, UPDATE ON mysql.backup_sbt_history TO 'backupadmin'@'localhost';

GRANT ENCRYPTION_KEY_ADMIN ON *.* TO 'backupadmin'@'localhost';

GRANT SELECT ON non-InnoDB_tbl TO 'backupadmin'@'localhost';

GRANT INNODB_REDO_LOG_ARCHIVE ON *.* TO 'backupadmin'@'localhost';

grant show view on *.* TO 'backupadmin'@'localhost';

grant event on *.* TO 'backupadmin'@'localhost';

GRANT ALTER ON mysql.backup_progress TO 'mysqlbackup'@'localhost';

GRANT CREATE, INSERT, DROP ON mysql.backup_progress_old TO 'mysqlbackup'@'localhost';

GRANT CREATE, INSERT, DROP, ALTER ON mysql.backup_progress_new TO 'mysqlbackup'@'localhost';

4) Configure Login patch for mysal backup admin user.
Most of the time backup is configured from the cron or from some scheduling tool. So , We cannot provide password in the script. In order to overcome this problem , We can configure login path for the MySQL backup admin user.

mysql_config_editor set --login-path=local --host=localhost --user=username --password

mysql_config_editor print –all


Some use full command for taking MySQL backup:


Full Backup:


mysqlbackup --login-path=mysqlbackup --host=localhost --with-timestamp --backup-image=/dbbackup/rise/$(date '+%Y-%m-%d')/my_full_$(date +'%Y-%m-%d-%H%M').mbi --backup-dir=/dbbackup/rise/$(date '+%Y-%m-%d')  backup-to-image

Incremental Backup:


mysqlbackup --login-path=myslbackup --host=localhost --with-timestamp --incremental --incremental-base=history:last_backup --backup-image=/dbbackup/rise/$(date '+%Y-%m-%d')/my_inc_$(date +'%Y-%m-%d-%H%M').mbi --backup-dir=/dbbackup/rise/$(date '+%Y-%m-%d')  backup-to-image


Comments

Popular posts from this blog

Restart Innodb MySQL Cluster after Complete outage(All node Down)

Oracle Block Corruption - Detection and Resolution

Add or Remove a node in MySQL Innodb Cluster