4.1.9 Partial Backup Options

This option is for filtering InnoDB tables for backup. The
InnoDB tables' fully qualified names are checked against the
regular expression specified by the option. If the REGEXP
matches
db_name.table_name,
the table is included. The regular expression syntax is the
extended form specified in the POSIX 1003.2 standard. For
example, --include=mydb.t[12] matches the
tables t1 and t2 in
the database mydb.

This option only applies to InnoDB tables created with the
MySQL option
innodb_file_per_table
enabled (which is the default setting for MySQL 5.6 and
after), in which case the tables are in separate files that
can be included or excluded from the backup. All tables in
the InnoDB system tablespace are always backed up.

This option does not filter the .frm
files associated with InnoDB tables, meaning that
regardless of the option’s value, all the
.frm files for all InnoDB tables are
always backed up unless they are excluded by other
options. Those .frm files for InnoDB
tables that are not backed up should be deleted before the
database backup is restored. See
Section 3.3.4.1, “Backing Up Some or All InnoDB Tables” for details.

--databases=LIST

Specifies the list of non-InnoDB tables to back up. The
argument specifies a space-separated list of database or
table names of the following form:

The option has no filtering effects on the InnoDB data
files (.ibd files) for the databases
or tables it specifies. To filter InnoDB data files, use
the --include option instead.

--databases-list-file=PATH

Specifies the parthname of a file that lists the non-InnoDB
tables to be backed up. The file contains entries for
databases or fully qualified table names separated by
newline or space. The format of the entries is the same as
for the --databases option:

db_name[.table_name]
db_name1[.table_name1]
...

Remove any whitespaces surrounding the database or table
names, as the whitespaces are not removed automatically.
Begin a line with the # character to
include a comment. No regular expressions are allowed.

If the specified entries do not match any database or table,
then no non-InnoDB data files are backed up.

Note

The option has no filtering effects on the InnoDB data
files (.ibd files) for the databases
or tables it specifies. To filter InnoDB data files, use
the --include option instead.

--only-known-file-types

By default, all files in the data directory are included in
the backup. (See Section 1.4, “Files that Are Backed Up” for
details.) If the --only-known-file-types
option is specified, the backup includes only the files with
these file extensions:

.ARM: Archive storage engine
metadata.

.ARZ: Archive storage engine data.

.CSM: CSV storage engine data.

.CSV: CSV storage engine data.

.frm: table definitions.

.MRG: Merge storage engine
references to other tables.

.MYD: MyISAM data.

.MYI: MyISAM indexes.

.OPT: database configuration.
information

.PAR: partition definitions.

.TRG: trigger parameters.

.TRN: trigger namespace
information.

--only-innodb

Back up only InnoDB data and log files. All
.frm files and files created by other
storage engines are excluded. Typically used when no
connection to mysqld is allowed or when
there is no need to copy MyISAM or .frm
files, for example, when you are sure there are no DDL
changes during the backup. See
Section 3.3.4.1, “Backing Up Some or All InnoDB Tables” for instructions and
examples.

Can be used in combination with the
--suspend-at-end option to allow
customized scripting at the end of backup.

Default: backups include files from all storage engines.

--only-innodb-with-frm[={all|related}]

Back up only InnoDB data, log files, and the
.frm files associated with the InnoDB
tables.

--only-innodb-with-frm=all includes
the .frm files for all InnoDB
tables in the backup.

--only-innodb-with-frm=related, in
combination with the
--include option, copies
only the .frm files for the
tables that are included in the partial backup.

--only-innodb-with-frm with no
argument is the same as
--only-innodb-with-frm=related.

Note

For incremental backups, even only changed
.ibd files are backed up,
.frm files associated with
all specified InnoDB tables are
included.

This option saves you having to script the backup step for
InnoDB .frm files, which you would
normally do while the server is put into a read-only state
by a FLUSH TABLES WITH READ LOCK
statement. The .frm files are copied
without putting the server into a read-only state, so that
the backup operation is a true
hot backup and does
not interrupt database processing. You must ensure that no
ALTER TABLE or other DDL
statements change .frm files for InnoDB
tables while the backup is in progress. If the
mysqlbackup command detects changes to
any relevant .frm files during the
backup operation, it halts with an error. If it is not
practical to forbid DDL on InnoDB tables during the backup
operation, use the --only-innodb option
instead and use the traditional method of copying the
.frm files while the server is locked.

All files created by other storage engines are excluded.
Typically used when no connection to
mysqld is allowed or when there is no
need to copy MyISAM files, for example, when you are sure
there are no DDL changes during the backup. See
Section 3.3.4.1, “Backing Up Some or All InnoDB Tables” for instructions and
examples.

Can be used in combination with the
--suspend-at-end option to allow
customized scripting at the end of backup.