MySQL Enterprise Backup User's Guide (Version 4.0.3)
The mysqlbackup commands to perform a restore
operation are copy-back-and-apply-log
and copy-back
(for directory backup
only; see Section 5.1.6, “Advanced: Preparing and Restoring a Directory Backup”). Normally, the
restoration process requires the database server to be already
shut down (or, at least not operating on the directory you are
restoring the data to), except for restorations of backups created
with the --use-tts
option; see
explanations below. The
process copies the data files, logs, and other backed-up files
from the backup directory back to their original locations, and
performs any required post-processing on them.
Example 5.1 Restoring a Database
mysqlbackup --defaults-file=<my.cnf> -uroot --backup-image=<image_name> \ --backup-dir=<backupTmpDir> --datadir=<restoreDir> copy-back-and-apply-log
The copy-back-and-apply-log
command
achieves two things:
Extracts the backup from the image file and copies it to the data directory on the server to be restored.
Performs an apply log operation to the restored data to bring them up-to-date.
See Section 4.2.3, “Restoring a Database” for an explanation of
the important options used in a restore operation like
--defaults-file
,
--datadir
,
--backup-image
, and
--backup-dir
.
The restored data includes the backup_history
table, where MySQL Enterprise Backup records details of each backup. The table
allows you to perform future incremental backups using the
--incremental-base=
option.
history:last_backup
When performing a restore, make sure the target data
directories are all clean, containing no old or unwanted
data files (this might require manual removal of files at
the locations specified by the
--datadir
,
--innodb_data_home_dir
,
--innodb_log_group_home_dir
, and
--innodb_undo_directory
options). The same
cleanup is not required for restoring backups created with
the--use-tts
option (in which
case other requirements described in
Section 5.1.4, “Restoring Backups Created with the --use-tts
Option” apply though).
Due to a known issue (Bug# 20485910), restoring a partial
image backup created with MySQL Enterprise Backup 3.11 or earlier requires
using the --force
option.
The following subsections describe a number of different scenarios for restoring a backup.