今天同事问我用Xtrabackup工具怎么对某些表进行备份,遂帮着解决,也顺便总了下,贴于此。
Percona Xtrabackup也可以实现部分备份,即只备份某个或某些指定的数据库或某数据库中的某个或某些表。但要使用此功能,必须启用innodb_file_per_table选项,即每张表保存为一个独立的文件。同时,其也不支持–stream选项,即不支持将数据通过管道传输给其它程序进行处理。
此外,还原部分备份跟还原全部数据的备份也有所不同,即你不能通过简单地将prepared的部分备份使用–copy-back选项直接复制回数据目录,而是要通过导入表的方向来实现还原。当然,有些情况下,部分备份也可以直接通过–copy-back进行还原,但这种方式还原而来的数据多数会产生数据不一致的问题,因此,无论如何不推荐使用这种方式。
对数据库进行部分备份有三种方式:正则表达式(–include), 枚举表文件(–tables-file)和列出要备份的数据库(–databases)。
1. 正则表达式(–include)方式
使用正则表达式方式时,要求为其指定匹配要备份的表的完整名称,即databasename.tablename,如:
# innobackupex --include='^mydatabase[.]mytable' /path/to/backup
上面的指令只备份表名相匹配的数据。
2. 枚举表文件(–tables-file)方式
此选项的参数需要是一个文件名,此文件中每行包含一个要备份的表的完整名称,格式为databasename.tablename。如
# echo "mydatabase.mytable" > /tmp/tables.txt # innobackupex --tables-file=/tmp/tables.txt /path/to/backup
完整表的文件名可以这么来创建:
# mysql -uroot -p -S /tmp/mysql.sock --skip-column-names -e "SELECT CONCAT(table_schema,'.',table_name) FROM information_schema.tables WHERE table_schema REGEXP '^ttlsa_com_(posts_n[0-9]|user)$';" > tables.txt # innobackupex --tables-file=/tmp/tables.txt /path/to/backup
3. 列出要备份的数据库(–databases)方式
此选项接受的参数为数据名,如果要指定多个数据库,彼此间需要以空格隔开;同时,在指定某数据库时,也可以只指定其中的某张表。此外,此选项也可以接受一个文件为参数,文件中每一行为一个要备份的对象。如:
# innobackupex --databases="mydatabase.mytable mysql" /path/to/backup
http://www.percona.com/doc/percona-xtrabackup/2.1/innobackupex/partial_backups_innobackupex.html
转自运维生存时间: http://www.ttlsa.com/html/3466.html
附:innobackupex --include="[^test.(sbtest|t1|product.search_base)]" /bak
相关推荐
Percona XtraBackup是一款开源的MySQL热备份工具,它支持在不停机的情况下对数据库进行备份,这对于需要高可用性的生产环境至关重要。这款工具尤其适用于24x7高负载的服务器以及低事务量的环境,旨在不干扰服务器...
Percona XtraBackup是基于...Percona XtraBackup能够帮助数据库管理员高效地管理备份和还原任务,确保数据库数据的安全性,同时减少备份对生产系统的影响,是数据库管理员和开发人员在进行数据库维护时不可或缺的工具。
这款工具的独特之处在于它可以在不锁定数据库的情况下进行完全备份,这意味着在备份过程中,业务可以照常运行,避免了对生产环境的影响。 首先,我们来了解一下Percona Xtrabackup的基本操作流程。在备份阶段,它会...
1. **在线热备份**:Percona XtraBackup允许在系统运行过程中进行备份,无需停止数据库服务。这对于高可用性环境尤其关键,因为系统可以在备份的同时保持正常运行,避免了因备份导致的服务中断。 2. **支持InnoDB...
此外,对于MySQL 8.0或更高版本,以及Percona XtraDB Cluster 8.0创建的数据库,Percona XtraBackup 2.4不适用,应使用对应的8.0版本的XtraBackup进行备份。 Percona XtraBackup的关键特性包括: 1. **非阻塞备份*...
Percona XtraBackup 的使用需要结合具体的数据库环境和业务需求进行调整,良好的备份策略对于保障数据库的数据安全和业务的连续性至关重要。通过了解和应用这些最佳实践,可以更高效地使用 Percona XtraBackup,为...
Percona Xtrabackup 2.0.0正是针对MySQL设计的一款高效、可靠的热备份工具,它能够在不锁定数据库的情况下进行完全或增量备份,极大地降低了对业务的影响。 Percona Xtrabackup是由Percona公司开发的开源备份解决...
总的来说,Percona Xtrabackup 2.4.18是MySQL 5.7备份策略的重要组成部分,它提供了高效、可靠的热备份解决方案,能够帮助企业确保数据安全,同时最小化对业务的影响。对于那些依赖MySQL运行关键业务的企业来说,...
用户手册部分则提供了如何安装和使用Percona XtraBackup的具体指南,帮助用户进行备份、恢复数据以及进行故障诊断等操作。用户手册还会介绍Percona XtraBackup的命令行选项以及如何使用这些选项来满足特定的备份需求...
总的来说,深入学习和研究Percona Xtrabackup的源码,不仅可以提升对数据库备份理论的理解,还能让我们掌握更多的实践技巧,为数据库系统的维护和优化提供有力的技术支撑。对于数据库管理员和开发者而言,这是一个...
Percona Xtrabackup的核心优势在于其热备份能力,即在数据库运行过程中进行备份,不会对正常服务产生任何影响。这对于高可用性系统来说是必不可少的,因为停机时间可能导致经济损失。此外,它还支持InnoDB和XtraDB...
2. **全量备份**:使用`xtrabackup`命令进行全量备份,这个过程会创建一个包含数据库文件的完整拷贝,同时还会记录下数据的最新状态。 3. **增量备份**:如果需要,可以进行增量或差异备份,这些备份只包含自上次...
《Percona Xtrabackup:MySQL数据库的高效备份与恢复解决方案》 Percona Xtrabackup是一款针对MySQL数据库的开源热备份工具,专为InnoDB和XtraDB存储引擎设计。它允许在不中断服务的情况下进行完整备份,极大地提高...
percona-xtrabackup-8.0.27-19-Linux-x86_64.glibc2.12-minimal.tar.gz、 percona-xtrabackup-8.0.27-19-Linux-x86_64.glibc2.17-minimal.tar.gz、 percona-xtrabackup-80-8.0.27-19.1.el6.x86_64.rpm、 percona-...
除了能够对InnoDB和XtraDB存储引擎进行完全非阻塞的备份外,Percona XtraBackup还支持在备份结束时,通过短暂暂停写操作,来备份MyISAM、Merge和Archive存储引擎,这包括分区表、触发器以及数据库选项。 Percona为...
Percona Xtrabackup是一款针对MySQL数据库的强大开源备份工具,它能够实现无锁热备份,确保在不影响业务正常运行的情况下获取数据库的完整快照。本篇文章将详细介绍Percona Xtrabackup 2.3.6版本,以及其在Linux x86...
2. 备份加密:为保障数据安全,可以使用XtraBackup的加密功能对备份文件进行加密。 3. 备份存储:备份文件应存放在不同的物理位置,以防止灾难性事件影响所有数据。 4. 监控与审计:设置监控报警,确保备份任务...
在MySQL数据库管理中,数据安全是至关重要的环节,而Percona XtraBackup正是一个不可或缺的工具,用于对MySQL数据库进行无损备份。这款软件在MySQL社区中享有极高的声誉,尤其在大型、高并发的数据库环境中,其性能...
- **InnoDB物理备份**:Percona Xtrabackup首先对InnoDB表空间进行完全物理复制,包括数据文件和日志文件。 - **redo log处理**:备份期间,它会收集未完成的redo log信息,以便在恢复时正确应用这些变更。 - **...