## Holland mysqldump Example Backup-Set ## ## This implements a vanilla backup-set using the mysqldump provider which, ## in turn, uses the 'mysqldump' utility. ## ## Many of these options have global defaults which can be found in the ## configuration file for the provider (which can be found, by default ## in /etc/holland/providers). [holland:backup] plugin = mysqldump backups-to-keep = 1 auto-purge-failures = yes purge-policy = after-backup estimated-size-factor = 1.0 # This section defines the configuration options specific to the backup # plugin. In other words, the name of this section should match the name # of the plugin defined above. [mysqldump] ## Override the path where we can find mysql command line utilities #mysql-binpath = /usr/bin/mysqldump ## One of: flush-lock, lock-tables, single-transaction, auto-detect, none ## ## flush-lock will run a FLUSH TABLES WITH READ LOCK prior to the backup ## ## lock-tables will instruct 'mysqldump' to lock all tables involved ## in the backup. ## ## single-transaction will force running a backup within a transaction. ## This allows backing up of transactional tables without imposing a lock ## howerver will NOT properly backup non-transacitonal tables. ## ## Auto-detect will choose single-transaction unless Holland finds ## non-transactional tables in the backup-set. ## ## None will completely disable locking. This is generally only viable ## on a MySQL slave and only after traffic has been diverted, or slave ## services suspended. lock-method = auto-detect ## comma-delimited glob patterns for matching databases ## only databases matching these patterns will be backed up ## default: include everything databases = "*" ## comma-delimited glob patterns to exclude particular ## databases #exclude-databases = ## only include the specified tables tables = "*" ## exclude specific tables #exclude-tables = "" ## Whether to dump routines explicitly ## (routines are implicitly included in the mysql database) dump-routines = no ## Whether to dump events explicitly. ## Note that this feature requires MySQL 5.1 or later. dump-events = no ## Whether to stop the slave before commencing with the backup stop-slave = no ## Whether to record the binary log name and position at the time of the ## backup. bin-log-position = no ## Whether or not to run FLUSH LOGS in MySQL with the backup. When FLUSH ## LOGS is actually executed depends on which if database filtering is being ## used and whether or not file-per-database is enabled. Generally speaking, ## it does not make sense to use flush-logs with file-per-database since the ## binary logs will not be consistent with the backup. flush-logs = no ## Whether to run a separate mysqldump for each database. Note that while ## this may initially sound like a good idea, it is far simpler to backup ## all databases in one file, although that makes the restore process ## more difficult when only certain data needs to be restored. file-per-database = no ## any additional options to the 'mysqldump' command-line utility ## these should show up exactly as they are on the command line ## e.g.: --flush-privileges --reset-master additional-options = "" ## Compression Settings [compression] ## compress method: gzip, gzip-rsyncable, bzip2, pbzip2, lzop, or xz ## Which compression method to use, which can be either gzip, bzip2, or lzop. ## Note that pbzip2 and lzop are not often installed by default on many Linux ## distributions and may need to be installed separately. method = gzip ## Whether to compress data as it is provided from 'mysqldump', or to ## compress after a dump has finished. In general, it is often better to use ## inline compression. The overhead, particularly when using a lower ## compression level, is often minial since the entire process is often I/O ## bound (as opposed to being CPU bound). inline = yes ## What compression level to use. Lower numbers mean faster compression, ## though also generally a worse compression ratio. Generally, levels 1-3 ## are considered fairly fast and still offer good compression for textual ## data. Levels above 7 can often cause a larger impact on the system due to ## needing much more CPU resources. Setting the level to 0 effectively ## disables compresion. level = 1 ## If the path to the compression program is in a non-standard location, ## or not in the system-path, you can provide it here. #bin-path = /usr/bin/gzip ## MySQL connection settings. Note that these can be inherited from the ## provider itself allowing for global defaults. Providing connection ## information for a backup-set can often be helpful when, for instance ## a backup-set is backing up a remote MySQL server. #[mysql:client] #user = hollandbackup #password = "hollandpw" #socket = /tmp/mysqld.sock #host = localhost #port = 3306