18.1 Backup Operations

The backup operations are the most frequently performed tasks by MySQL Enterprise Backup. Various kinds of backups can be performed by adding different options, like using --compress or --incremental for compressed or incremental backups. Here is the syntax for the mysqlbackup commands for performing a backup operation:

mysqlbackup [STD-OPTIONS]
            [CONNECTION-OPTIONS]
            [SERVER-REPOSITORY-OPTIONS]
            [BACKUP-REPOSITORY-OPTIONS]
            [METADATA-OPTIONS]
            [COMPRESSION-OPTIONS]
            [SPECIAL-BACKUP-TYPES-OPTIONS]
            [INCREMENTAL-BACKUP-OPTIONS]
            [PARTIAL-BACKUP-RESTORE-OPTIONS]
            [SINGLE-FILE-BACKUP-OPTIONS]
            [PERFORMANCE-SCALABILITY-CAPACITY-OPTIONS]            
            [MESSAGE-LOGGING-OPTIONS]
            [PROGRESS-REPORT-OPTIONS]
            [ENCRYPTION-OPTIONS]
            [CLOUD-STORAGE-OPTIONS]
            [ENCRYPTED-INNODB-OPTIONS]
            backup-to-image

mysqlbackup [STD-OPTIONS]
            [CONNECTION-OPTIONS]
            [SERVER-REPOSITORY-OPTIONS]
            [BACKUP-REPOSITORY-OPTIONS]
            [METADATA-OPTIONS]
            [COMPRESSION-OPTIONS]
            [SPECIAL-BACKUP-TYPES-OPTIONS]
            [INCREMENTAL-BACKUP-OPTIONS]
            [PARTIAL-BACKUP-RESTORE-OPTIONS]
            [PERFORMANCE-SCALABILITY-CAPACITY-OPTIONS]            
            [MESSAGE-LOGGING-OPTIONS]
            [PROGRESS-REPORT-OPTIONS]
            [ENCRYPTED-INNODB-OPTIONS]
            backup | backup-and-apply-log
  • backup-to-image

    Produces a single-file backup holding the backup data. In most cases, single-file backups are preferred over directory backups, which are created using the backup command.

    The command requires the --backup-image option to specify the destination file. Can be used to stream the backup to a storage device or another system without ever storing the data on the database server. You can specify --backup-image=-, representing standard output, allowing the output to be piped to another command. To avoid mixing normal informational messages with backup output, the --help message, errors, alerts, and normal informational messages are always printed to standard error stream.

    Except when streaming the backup image with --backup-image=-, if --backup-image does not give a full path name, mysqlbackup will actually take the value of --backup-image as a path relative to the current directory in which the command is run (for release 8.0.18 and earlier, the path is taken to be relative to the location specified by --backup-dir); if the --with-timestamp option is also used, the backup image is then saved in a subdirectory created under current directory (for release 8.0.18 and earlier, under the folder specified by --backup-dir) that bears the timestamp in its name.

    The command also requires the use of the --backup-dir option to supply a temporary folder to save the backup metadata (including the mysqlbackup message log, the start and end LSN, and so on) and some temporary output.

  • backup

    Backs up data to a directory. In most cases, single-file backups, which are created using the backup-to-image command, are preferred over directory backups.

    The command only performs the initial phase of a complete backup process. The second phase is performed later by running mysqlbackup again with the apply-log command, which makes the backup consistent.

  • backup-and-apply-log

    A combination of backup and apply-log. It cannot be used for an incremental backup.