mysql热备工具innobackupex参数详解

Posted 无锋剑客

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql热备工具innobackupex参数详解相关的知识,希望对你有一定的参考价值。



Xtrabackup有两个主要的工具:xtrabackup、innobackupex


1、xtrabackup只能备份InnoDB和XtraDB两种数据表,而不能备份MyISAM数据表


2、innobackupex是参考了InnoDB Hotbackup的innoback脚本修改而来的.innobackupex是一个perl脚本封装,封装了xtrabackup。主要是为了方便的 同时备份InnoDB和MyISAM引擎的表,但在处理myisam时需要加一个读锁。并且加入了一些使用的选项。如slave-info可以记录备份恢 复后,作为slave需要的一些信息,根据这些信息,可以很方便的利用备份来重做slave。




innobackupex [options] <backup directory>




Options:




--apply-log


Prepare a backup in BACKUP-DIR by applying the transaction log file named "xtrabackup_logfile" located in the same directory. Also, create new transaction logs. The InnoDB configuration is read from the file "backup-my.cnf".




--compress


This option instructs xtrabackup to compress backup copies of InnoDB data files. It is passed directly to the xtrabackup child process. Try xtrabackup --help for more details.




--compress-threads


This option specifies the number of worker threads that will be used for parallel compression. It is passed directly to the xtrabackup child process. Try xtrabackup --help for more details.




--copy-back


Copy all the files in a previously made backup from the backup directory to their original locations.




--databases=LIST


This option specifies the list of databases that innobackupex should back up. The option accepts a string argument. The list is of the form "databasename1[.table_name1] databasename2[.table_name2] . . .". If this option is not specified, all databases containing MyISAM and InnoDB tables will be backed up. Please make sure that --databases contains all of the InnoDB databases and tables, so that all of the innodb.frm files are also backed up. In case the list is very long, this can be specified in a file, and the full path of the file can be specified instead of the list. (See option --tables-file.)




--defaults-file=[MY.CNF]


This option specifies what file to read the default mysql options from. The option accepts a string argument. It is also passed directly to xtrabackups --defaults-file option. See the xtrabackup documentation for details.




--export


This option is passed directly to xtrabackups --export option. It enables exporting individual tables for import into another server. See the xtrabackup documentation for details.




--extra-lsndir=DIRECTORY


This option specifies the directory in which to save an extra copy of the "xtrabackup_checkpoints" file. The option accepts a string argument. It is passed directly to xtrabackups --extra-lsndir option. See the xtrabackup documentation for details.




--force-tar


This option forces the use of tar when creating a streamed backup, rather than tar4ibd, which is the default.




--help


This option displays a help screen and exits.




--host=HOST


This option specifies the host to use when connecting to the database server with TCP/IP. The option accepts a string argument. It is passed to the mysql child process without alteration. See mysql --help for details.




--ibbackup=IBBACKUP-BINARY


This option specifies which xtrabackup binary should be used. The option accepts a string argument. IBBACKUP-BINARY should be the command used to run XtraBackup. The option can be useful if the xtrabackup binary is not in your search path or working directory. If this option is not specified, innobackupex attempts to determine the binary to use automatically. By default, "xtrabackup" is the command used. However, when option --copy-back is specified, "xtrabackup_51" is the command used. And when option --apply-log is specified, the binary is used whose name is in the file "xtrabackup_binary" in the backup directory, if that file exists.




--include=REGEXP


This option is a regular expression to be matched against table names in databasename.tablename format. It is passed directly to xtrabackups --tables option. See the xtrabackup documentation for details.




--incremental


This option tells xtrabackup to create an incremental backup, rather than a full one. It is passed to the xtrabackup child process. When this option is specified, either --incremental-lsn or --incremental-basedir can also be given. If neither option is given, option --incremental-basedir is passed to xtrabackup by default, set to the first timestamped backup directory in the backup base directory.




--incremental-basedir=DIRECTORY


This option specifies the directory containing the full backup that is the base dataset for the incremental backup. The option accepts a string argument. It is used with the --incremental option.




--incremental-dir=DIRECTORY


This option specifies the directory where the incremental backup will be combined with the full backup to make a new full backup. The option accepts a string argument. It is used with the --incremental option.








--incremental-lsn


This option specifies the log sequence number (LSN) to use for the incremental backup. The option accepts a string argument. It is used with the --incremental option. It is used instead of specifying --incremental-basedir. For databases created by MySQL and Percona Server 5.0-series versions, specify the LSN as two 32-bit integers in high:low format. For databases created in 5.1 and later, specify the LSN as a single 64-bit integer.




--no-lock


Use this option to disable table lock with "FLUSH TABLES WITH READ LOCK". Use it only if ALL your tables are InnoDB and you DO NOT CARE about the binary log position of the backup.




--no-timestamp


This option prevents creation of a time-stamped subdirectory of the BACKUP-ROOT-DIR given on the command line. When it is specified, the backup is done in BACKUP-ROOT-DIR instead.




--parallel=NUMBER-OF-THREADS


This option specifies the number of threads the xtrabackup child process should use to back up files concurrently. The option accepts an integer argument. It is passed directly to xtrabackups --parallel option. See the xtrabackup documentation for details.




--password=WORD


This option specifies the password to use when connecting to the database. It accepts a string argument. It is passed to the mysql child process without alteration. See mysql --help for details.




--port=PORT


This option specifies the port to use when connecting to the database server with TCP/IP. The option accepts a string argument. It is passed to the mysql child process. It is passed to the mysql child process without alteration. See mysql --help for details.




--redo-only


This option is passed directly to xtrabackups --apply-log-only option. This forces xtrabackup to skip the "rollback" phase and do a "redo" only. This is necessary if the backup will have incremental changes applied to it later. See the xtrabackup documentation for details.




--remote-host=HOSTNAME


This option is DEPRECATED and will be removed in Percona XtraBackup 2.1. In Percona XtraBackup 2.0 and later, you should use streaming backups instead. This option specifies the remote host on which the backup files will be created, by using an ssh connection. The option accepts a string argument.




--safe-slave-backup


Stop slave SQL thread and wait to start backup until Slave_open_temp_tables in "SHOW STATUS" is zero. If there are no open temporary tables, the backup will take place, otherwise the SQL thread will be started and stopped until there are no open temporary tables. The backup will fail if Slave_open_temp_tables does not become zero after --safe-slave-backup-timeout seconds. The slave SQL thread will be restarted when the backup finishes.




--safe-slave-backup-timeout


How many seconds --safe-slave-backup should wait for Slave_open_temp_tables to become zero. (default 300)




--scpopt=SCP-OPTIONS


This option specifies the command line options to pass to scp when the option --remost-host is specified. The option accepts a string argument. If the option is not specified, the default options are "-Cp -c arcfour".




--sshopt=SSH-OPTIONS


This option specifies the command line options to pass to ssh when the option --remost-host is specified. The option accepts a string argument.




--slave-info


This option is useful when backing up a replication slave server. It prints the binary log position and name of the master server. It also writes this information to the "xtrabackup_slave_info" file as a "CHANGE MASTER" command. A new slave for this master can be set up by starting a slave server on this backup and issuing a "CHANGE MASTER" command with the binary log position saved in the "xtrabackup_slave_info" file.




--socket=SOCKET


This option specifies the socket to use when connecting to the local database server with a UNIX domain socket. The option accepts a string argument. It is passed to the mysql child process without alteration. See mysql --help for details.




--stream=[tar|. . .]


This option specifies the format in which to do the streamed backup. The option accepts a string argument. The backup will be done to STDOUT in the specified format. Currently, the only supported formats are tar and xbstream. This option is passed directly to xtrabackups --stream option.




--tables-file=FILE


This option specifies the file in which there are a list of names of the form database. The option accepts a string argument.table, one per line. The option is passed directly to xtrabackups --tables-file option.




--throttle=ios


This option specifies a number of I/O operations (pairs of read+write) per second. It accepts an integer argument. It is passed directly to xtrabackups --throttle option.




--tmpdir=DIRECTORY


This option specifies the location where a temporary file will be stored. The option accepts a string argument. It should be used when --remote-host or --stream is specified. For these options, the transaction log will first be stored to a temporary file, before streaming or copying to a remote host. This option specifies the location where that temporary file will be stored. If the option is not specifed, the default is to use the value of tmpdir read from the server configuration.




--use-memory=B


This option accepts a string argument that specifies the amount of memory in bytes for xtrabackup to use for crash recovery while preparing a backup. Multiples are supported providing the unit (e.g. 1MB, 1GB). It is used only with the option --apply-log. It is passed directly to xtrabackups --use-memory option. See the xtrabackup documentation for details.




--user=NAME


This option specifies the MySQL username used when connecting to the server, if thats not the current user. The option accepts a string argument. It is passed to the mysql child process without alteration. See mysql --help for details.




--version


This option displays the xtrabackup version and copyright notice and then exits.


以上是关于mysql热备工具innobackupex参数详解的主要内容,如果未能解决你的问题,请参考以下文章

innobackupex实现MySQL数据库的备份与恢复

Mysql备份工具Xtrabackup

MySQL5.7.18 备份Mysqldump,mysqlpump,xtrabackup,innobackupex 全量,增量备份,数据导入导出

MySQL使用Xtrabackup进行增量热备

Percona XtraBackup热备工具

innobackupex 热备指定库表操作