10bet网址
MySQL企业备份3.11用户指南
相关的文档10bet官方网站 本手册下载
PDF (Ltr)- 1.0 mb
PDF (A4)- 1.0 mb


1.3备份性能概述和容量注意事项

在备份策略中,性能和存储空间是关键方面。您希望备份能够快速完成,数据库服务器上的CPU开销很少。您还希望备份数据是紧凑的,这样您就可以随时保留多个备份,以便随时恢复。将备份数据传输到另一个系统应该是快速和方便的。所有这些方面都是由选项控制的mysqlbackup命令。

有时您必须平衡不同类型的开销——CPU周期、存储空间和网络流量。始终要注意在计划的维护期间或灾难发生时恢复数据需要多少时间。例如,以下是MySQL企业备份的一些关键特性需要考虑的因素:

  • 并行备份是MySQL Enterprise Backup 3.8中的默认值,这是对早期MySQL Enterprise Backup版本的一个重大性能改进。读、处理和写是所有MEB操作的主要子操作。例如,在备份操作中,MySQL Enterprise backup首先从磁盘读取数据,然后处理该数据,将数据写入磁盘,然后再次读取数据以进行验证。MySQL企业备份确保这些子操作彼此独立,并行运行,以获得性能改进。使用相同类型的多个线程并行执行读、处理和写子操作:多个读线程、多个处理线程和多个写线程,从而获得更好的性能。当RAID阵列同时用作源设备和目标设备时,对于可以并行使用更多CPU周期的压缩备份来说,性能提升通常会更大。

    并行备份采用块级并行,使用16MB的块。不同的线程可以在一个文件中读取、处理和写入不同的16MB块。并行备份提高了操作的性能,无论实例中是否包含一个巨大的数据系统表空间中创建的.ibd文件表示的表空间innodb_file_per_table模式)。

  • 增量备份比完全备份快,节省数据库服务器上的存储空间,并节省在不同服务器上传输备份数据的网络流量。增量备份需要额外的处理,以使备份可以恢复,您可以在不同的系统上执行此操作,以最小化数据库服务器上的CPU开销。

  • 压缩备份节省InnoDB表的存储空间,以及将备份数据传输到另一个服务器的网络流量。它们确实比未压缩的备份增加了更多的CPU开销。在恢复期间,您需要同时使用压缩和未压缩的数据,因此要考虑到这些额外的存储空间和解压缩数据的时间。

    除了压缩InnoDB表中的数据之外,压缩备份还会跳过InnoDB表空间文件中未使用的空间。未压缩的备份包括这个未使用的空间。

  • 当空间有限时,或者您有一个便宜、大但速度慢的存储设备(如磁带)时,性能和空间方面的考虑是不同的。您希望避免在数据库服务器上存储备份数据的中间副本,而不是以尽可能快的备份为目标。MySQL企业备份可以生成单文件备份,并将该文件直接传输到其他服务器或设备。由于备份数据不会保存到本地系统,因此可以避免数据库服务器上的空间开销。您还可以避免保存一组备份文件,然后将它们捆绑到一个存档以便传输到另一个服务器或存储设备的性能开销。有关详细信息,请参见第3.3.5.1节“将备份数据流到另一个设备或服务器”

    当将备份数据流到磁带时,通常不压缩备份,因为执行压缩的数据库服务器上的CPU开销比磁带设备上的额外存储空间更昂贵。当将备份数据流传输到另一个服务器时,可以在原始服务器上压缩,也可以在目标服务器上压缩,这取决于哪个服务器有更多的空闲CPU容量,以及压缩可以节省多少网络流量。或者,您可以在目标服务器上保留未压缩的备份数据,以便可以在短时间内恢复它。

对于灾难恢复,当恢复数据的速度非常关键时,您可能更喜欢已经准备好并未压缩的关键备份数据,以便恢复操作涉及的步骤尽可能少。

在灾难恢复过程中,速度是最关键的。例如,尽管a逻辑备份执行的, mysqldump命令所花费的时间可能与物理备份使用MySQL企业备份产品(至少对于小型数据库),MySQL企业备份的恢复操作通常更快。将实际的数据文件复制回数据目录可以跳过插入行和更新来自于的SQL语句的索引的开销, mysqldump输出。

为了尽量减少对Linux和Unix系统上服务器性能的任何影响,MySQL Enterprise Backup将备份数据写入而不将其存储在操作系统的磁盘缓存中posix_fadvise ()系统调用。该技术通过防止频繁访问的数据通过对备份数据的一次性大读取操作从磁盘缓存中刷新,最大限度地减少了备份操作之后的任何放缓。

有关涉及备份和恢复性能的技术和权衡的更多信息,请参见第七章,MySQL企业备份的性能考虑