Full Backup & Restore Mairadb
From:     https://mariadb.com/kb/en/full-backup-and-restore-with -mariabackup/


BAckup DB Server Prepare Backup for Restore Restoring Backup
Restore With Other Tools




Full Backup and Restore with Mariabackup When using Mariabackup, you have the option of performing a full or an incremental backup. Full backups create a complete backup of the database server in an empty directory while incremental backups update a previous backup with whatever changes to the data have occurred since the backup. This page documents how to perform full backups.
Backing up the Database Server In order to back up the database, you need to run Mariabackup with the - -backup option to tell it to perform a backup and with the --target-dir option to tell it where to place the backup files. When taking a full backup, the target directory must be empty or it must not exist. To take a backup, run the following command: $ mariabackup --backup \ --target-dir=/var/mariadb/backup/ \ --user=mariabackup --password=mypassword The time the backup takes depends on the size of the databases or tables you're backing up. You can cancel the backup if you need to, as the backup process does not modify the database. Mariabackup writes the backup files the target directory. If the target directory doesn't exist, then it creates it. If the target directory exists and contains files, then it raises an error and aborts. Here is an example backup directory: $ ls /var/mariadb/backup/ aria_log.0000001 mysql xtrabackup_checkpoints aria_log_control performance_schema xtrabackup_info backup-my.cnf test xtrabackup_logfile ibdata1 xtrabackup_binlog_info
Preparing the Backup for Restoration The data files that Mariabackup creates in the target directory are not point-in-time consistent, given that the data files are copied at different times during the backup operation. If you try to restore from these files, InnoDB notices the inconsistencies and crashes to protect you from corruption Before you can restore from a backup, you first need to prepare it to make the data files consistent. You can do so with the --prepare option. $ mariabackup --prepare \ --target-dir=/var/mariadb/backup/
Restoring the Backup Once the backup is complete and you have prepared the backup for restoration (previous step), you can restore the backup using either the --copy-back or the --move-back options. The --copy-back option allows you to keep the original backup files. The --move-back option actually moves the backup files to the datadir, so the original backup files are lost.
Restoring with Other Tools Once a full backup is prepared, it is a fully functional MariaDB data directory. Therefore, as long as the MariaDB Server process is stopped on the target server, you can technically restore the backup using any file copying tool, such as cp or rysnc. For example, you could also execute the following to restore the backup: $ rsync -avrP /var/mariadb/backup /var/lib/mysql/ $ chown -R mysql:mysql /var/lib/mysql/ $ rm /var/lib/mysql/ib_logfile* When using Mariabackup from versions prior to MariaDB 10.2.10, you would also have to remove any pre-existing InnoDB redo log files. For example: $ rm /var/lib/mysql/ib_logfile* See Mariabackup Internal Details: Redo Log Files for more information.