Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/xbcloud-binary-overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -376,4 +376,4 @@ Now that you understand the basics of xbcloud, here are the recommended next ste

5. **Test your setup** - Start with a simple full backup using the examples in the [Usage](#usage) section

For troubleshooting and additional help, see the [Troubleshoot](troubleshoot.md) section or contact [Percona support](get-help.md).
For troubleshooting and additional help, see the [Troubleshooting](#troubleshooting) section or contact [Percona support](get-help.md).
87 changes: 74 additions & 13 deletions docs/xtrabackup-binary-overview.md
Original file line number Diff line number Diff line change
@@ -1,18 +1,79 @@
# The xtrabackup binary overview
# Overview of the xtrabackup binary

The *xtrabackup* binary is a compiled C program that is linked with the *InnoDB*
libraries and the standard *MySQL* client libraries.
The xtrabackup binary compiles in C and connects directly to InnoDB libraries and standard MySQL client libraries. The tool performs point-in-time backups for InnoDB and XtraDB tables and captures schema definitions, MyISAM tables, and other server components.

*xtrabackup* enables point-in-time backups of *InnoDB* / *XtraDB* tables
together with the schema definitions, *MyISAM* tables, and other portions of the
server.
The InnoDB libraries apply logs to data files and preserve data consistency during the backup process. The MySQL client libraries parse command-line options and configuration files and simplify user interaction.

The *InnoDB* libraries provide the functionality to apply a log to data
files. The *MySQL* client libraries are used to parse command-line options and
configuration file.
The xtrabackup binary runs in three modes:

The tool runs in either `--backup` or `--prepare` mode,
corresponding to the two main functions it performs. There are several
variations on these functions to accomplish different tasks, and there is one
less commonly used mode, `--print-param`.
* Backup mode captures data and logs

* Prepare mode applies logs to create a consistent snapshot

* Print-param mode displays internal parameters and supports debugging and configuration validation

Beginner DevOps users benefit from the tool’s automation and reliability, while seasoned DBAs leverage its precision and flexibility to manage complex backup strategies across production environments.

## Key features

* Hot backups enable backup operations without locking the database and allow uninterrupted access

* Incremental backups capture only changes since the last backup and reduce time and storage requirements

* Compression reduces backup file size and accelerates transfer speeds

* Encryption secures backup data and protects sensitive information during storage and transmission

## Benefits

* Data integrity supports point-in-time recovery and minimizes the risk of data loss

* Broad compatibility backs up both InnoDB and MyISAM tables and includes schema definitions

* Streamlined recovery simplifies the restoration process and reduces downtime during critical events

## Use cases

* Production backups support live environments that require consistent, non-disruptive backup strategies. DevOps teams schedule hot backups during peak hours to avoid downtime, while DBAs monitor performance and validate backup integrity

* Disaster recovery enables rapid restoration after hardware failures, data corruption, or security breaches. Teams use xtrabackup to maintain offsite replicas or cloud-based archives that reduce recovery time objectives

* Development and testing provides clean, restorable datasets for staging environments. Developers reset databases to known states for testing schema changes, debugging, or validating migrations

* Cloud migration simplifies the transfer of large datasets between on-premises and cloud platforms. Administrators use xtrabackup to create consistent snapshots and restore them across different infrastructure layers

* Compliance auditing preserves historical data states for regulatory reviews. Organizations retain encrypted backups to meet retention policies and demonstrate data governance practices

## Security considerations

* File protection requires strong encryption during backup creation and secure storage afterward. Administrators configure encryption keys and enforce access controls to prevent unauthorized access

* Access management defines roles and permissions for backup operations. Only authorized users should initiate backups, restore data, or access archived files

* Data masking removes or obfuscates sensitive fields before exporting backups for non-production use. DevOps teams sanitize personally identifiable information to comply with privacy regulations such as GDPR or HIPAA

* Transport security ensures encrypted transmission of backup files over networks. Teams use secure protocols like SCP, SFTP, or HTTPS to prevent interception during transfer

* Key rotation and storage maintains encryption hygiene. Organizations rotate keys regularly and store them in secure vaults or hardware security modules to reduce exposure risks

## Community contributions

Users engage with the Percona community to share tips, ask questions, and exchange experiences. The Percona Forum provides a space for discussion and collaboration: [https://forums.percona.com/c/mysql-mariadb/percona-xtrabackup/10](https://forums.percona.com/c/mysql-mariadb/percona-xtrabackup/10)

## Limitations

* Learning curve challenges new users with a wide range of options and modes. DevOps teams benefit from guided documentation and community support to accelerate onboarding

* Resource consumption affects system performance during backup operations, especially on large datasets. DBAs monitor system load and schedule backups during low-traffic periods to minimize impact

* Library dependencies introduce potential issues when InnoDB or MySQL client libraries encounter problems. Teams validate library versions and test compatibility before deployment

## Additional resources

Explore the following sections for more guidance:

* Configuration options appear on the configure xtrabackup page: [configure-xtrabackup.md](configure-xtrabackup.md)

* Command-line options: A comprehensive list of command-line options is available on the xtrabackup option reference page: [xtrabackup-option-reference.html](xtrabackup-option-reference.html)

* Implementation details: Review technical insights and architecture on the xtrabackup implementation details page: [xtrabackup-implementation-details.md](xtrabackup-implementation-details.md)
Loading