20.10性能/可扩展性/容量选项

这些选项限制备份进程使用的资源,以最小化繁忙或庞大数据库的备份开销,或指定遇到资源问题时进程的行为。

  • ——缓冲区数量=num_buffers

    命令行格式 ——缓冲区数量=号
    类型 数字
    默认值 14
    最小值 1

    指定在多线程选项期间使用的缓冲区的数量,每个16MB大小。

    对于cpu密集型处理(如备份),尤其在使用压缩时,请使用较高的数字。对于恢复备份等磁盘密集型处理,请使用较低的数字。该值应该至少与读线程或写线程的数量相同,这取决于操作的类型。

    默认值:目前14。

    对于压缩或增量备份操作,缓冲区大小略大于16MB,以容纳报头。

    另外一个缓冲区用于单文件增量备份和单文件压缩备份。

    压缩备份、压缩单文件备份和解压缩应用程序日志操作需要为每个进程线程增加一个缓冲区。

    如果更改读、写和处理线程的数量,可以尝试更改此值,使其略大于那些其他选项指定的线程总数。看到第13.1节,“优化备份性能”而且第13.2节,“优化恢复性能”获取关于此值和各种硬件配置(如RAID或非RAID存储设备)的其他性能相关选项的建议值组合的附加建议。

  • ——read-threads =num_threads

    命令行格式 ——read-threads =号
    类型 数字
    默认值 1
    最小值 1
    最大值 15

    指定用于从磁盘读取数据的线程数。这个选项适用于以下几种操作:复制回去copy-back-and-apply-log提取备份,backup-and-apply-log.如果指定的值为0,它将静默地调整为1。最大值是15。如果您提供了一个负值,它将无声地调整为15。为运用原木备份目录的操作和的apply-log阶段copy-back-and-apply-logbackup-and-apply-log,或apply-incremental-backup,无论该选项的设置如何,读线程的数量总是1。看到第13.1节,“优化备份性能”而且第13.2节,“优化恢复性能”的值的推荐组合的建议——read-threads——流程线程,——帖子的对于各种硬件配置,如RAID或非RAID存储设备。

    默认值:1。

  • ——流程线程=num_threads

    命令行格式 ——流程线程数量=
    类型 数字
    默认值 6
    最小值 1
    最大值 15

    指定用于处理数据的线程数,包括压缩和解压缩、加密和解密、应用日志操作以及打包和提取备份映像。为backup-and-apply-logcopy-back-and-apply-log,apply-incremental-backup——流程线程设置操作的应用日志阶段的工作线程号。对于不涉及数据处理的操作,该选项将被忽略复制回去(除非涉及解密或解压缩),backup-dir-to-image,或使用——incremental-with-redo-log-only选择。

    该选项适用于所有操作,默认值为6。

    如果指定的值为0,它将静默地调整为1。最大值是15。如果您提供了一个负值,它将无声地调整为15。看到第13.1节,“优化备份性能”而且第13.2节,“优化恢复性能”的值的推荐组合的建议——read-threads——流程线程,——帖子的对于各种硬件配置,如RAID或非RAID存储设备。

  • ——帖子=num_threads

    命令行格式 ——帖子=号
    类型 数字
    默认值 1
    最小值 1
    最大值 15

    指定用于将数据写入磁盘的线程数。这个选项适用于以下几种操作:复制回去copy-back-and-apply-log提取backup-to-image备份,backup-and-apply-log.可搜索的任何写目标都支持多个写线程;——帖子的仅当写目标不可查找时强制为1(例如,当备份写入到?stdout、磁带或云存储)。该选项在与其他单文件备份操作(如list-image验证

    如果指定的值为0,它将静默地调整为1。最大值是15。如果您提供了一个负值,它将无声地调整为15。为运用原木备份目录的操作和的apply-log阶段copy-back-and-apply-logbackup-and-apply-log,或apply-incremental-backup,无论该选项的设置如何,写线程的数量总是0。看到第13.1节,“优化备份性能”而且第13.2节,“优化恢复性能”的值的推荐组合的建议——read-threads——流程线程,——帖子的对于各种硬件配置,如RAID或非RAID存储设备。

    默认值:1。

  • ——limit-memoryMB

    命令行格式 ——limit-memory = MB
    类型 数字
    默认值 100表示应用日志(不压缩),300表示其他操作
    最小值 0
    最大值 999999
    单位 兆字节

    指定可使用的最大内存(以兆字节为单位)mysqlbackup.它适用于所有的运算。不包括任何后缀,如mbkb在选项值中。

    默认值:100运用原木如果没有解压缩,所有其他操作为400(以兆字节为单位)。

    该选项指定的内存限制还限制了多线程处理可用的16MB缓冲区的数量。例如,对于400 MB的限制,最大缓冲区数是25(除了云备份,它需要额外的内存,最大缓冲区数是18)。如果需要额外的缓冲区,因为您增加了——read-threads——流程线程——帖子的和/或——缓冲区数量,增加——limit-memory相应的值。

  • ——睡眠女士

    命令行格式 ——睡眠=女士
    类型 数字
    默认值 0
    单位 毫秒

    指定从InnoDB表复制一定数量的数据后休眠的毫秒数。每个数据块是1024个InnoDB数据页,通常总共16MB。这是为了限制数据库服务器上的CPU和I/O开销。

    默认值:0(无休眠)。

  • ——无固定

    在备份期间禁用所有锁定(请参见备份过程详情)。它可以用于备份服务器,减少对正常数据库处理的干扰。如果在备份InnoDB和非InnoDB文件的过程中发生了任何变化,那么InnoDB和非InnoDB数据可能会不一致。

  • ——lock-wait-timeout

    命令行格式 ——lock-wait-timeout
    删除 8.0.16
    类型 数字
    默认值 60
    最小值 1
    单位 第二个

    对于MySQL Enterprise Backup 8.0.16及更高版本:不再支持该选项。

    对于MySQL Enterprise Backup 8.0.15及之前版本:为。指定以秒为单位的超时使用读锁刷新表声明,mysqlbackup在备份的最后阶段出现问题,将数据库暂时置于只读状态。如果超过超时,则语句失败,释放表上的锁,这样就可以执行锁持有的查询。mysqlbackup然后重试该语句并继续备份。超时防止在服务器上运行的长时间查询阻止使用读锁刷新表语句结束,暂停进一步的查询,并最终关闭服务器。默认是60。最小值为1。

  • ——page-reread-time =女士

    命令行格式 ——page-reread-time =女士
    类型 数字
    默认值 One hundred.
    单位 毫秒

    以毫秒为单位的间隔mysqlbackup在重读之前等待页面无法通过校验和测试。一个繁忙的服务器可能正在写一个页面mysqlbackup是阅读它。可以是浮点数,如0.05表示50微秒。最好的分辨率是1微秒,但在某些平台上可能会更差。默认为100毫秒(0.1秒)。

  • ——page-reread-count =retry_limit

    命令行格式 ——page-reread-count =号
    类型 数字
    默认值 500

    当a时的最大重试次数页面校验和测试失败。一个繁忙的服务器可能正在写一个页面mysqlbackup是阅读它。如果同一页面连续多次校验和测试失败,则根据——page-reread-time选项,则备份失败。默认是500。

  • ——on-disk-full ={中止| abort_and_remove |警告}

    命令行格式 ——on-disk-full =选项
    类型 枚举
    默认值 中止
    有效值

    中止

    警告

    abort_and_remove

    指定备份进程遇到磁盘已满的情况时的行为。此选项仅用于备份操作(备份backup-and-apply-log,backup-to-image).

    • 中止:停止备份,不删除备份目录。磁盘已满。

    • abort_and_remove:终止备份并删除备份目录。

    • 警告:每30秒写入一条警告信息,并重试备份,直到磁盘空间可用为止。

    默认值:中止

  • ——skip-unused-pages

    备份InnoDB表时,跳过表空间中未使用的页面。此选项适用于备份而且backup-to-image行动,但不去增量备份。选项将被忽略backup-and-apply-log操作。

    注意,使用——skip-unused-pages选项无法使用恢复copy-back-and-apply-log

    未使用的页面通常是由大量删除数据造成的空闲页面。通过在备份期间跳过未使用的页面,该选项可以减少备份大小,从而减少操作所需的磁盘空间和I/O资源。然而,随后的运用原木对备份的操作将花费更多的时间来完成,因为在操作期间,未使用的页面将被插入到表中。

  • ——skip-binlog

    在备份操作时,跳过将二进制日志文件包含在备份中,或在恢复操作时跳过将二进制日志文件复制到服务器上。

    缺省情况下,对所有类型的备份(完全备份、增量备份(参见二进制日志和中继日志恢复对于异常)、压缩的、部分的(除了TTS备份),排成一列纵队,等等)。看到表1.1,“备份中的文件类型”的细节。在以下情况下,使用该选项可以跳过备份二进制日志:

    • 如果出现资源或性能问题。

    • 对于MySQL Enterprise Backup 8.0.18及更早版本:如果正在备份的服务器上缺少任何二进制日志文件,为了避免mysqlbackup为丢失的文件抛出错误。

    对于MySQL Enterprise Backup 8.0.19及更高版本:该选项不仅对当前备份操作跳过二进制日志,而且对基于当前备份的所有后续增量备份也跳过二进制日志。

    对于MySQL Enterprise Backup 8.0.19及更高版本:恢复增量备份时——skip-binlog选项,mysqlbackup为已经恢复到服务器上的任何二进制日志文件添加.old扩展。

  • ——skip-relaylog

    当使用副本服务器时,在备份操作期间,跳过在备份中包括中继日志文件,或在恢复操作期间跳过将中继日志文件复制到服务器。

    中继日志文件,以及中继日志索引文件和master.infoslave.info默认情况下,所有类型的备份(完全备份、增量备份(请参阅二进制日志和中继日志恢复对于异常)、压缩的、部分的(除了TTS副本服务器的备份)、单文件等)。看到表1.1,“备份中的文件类型”的细节。如果出现资源、性能或其他问题,使用此选项可跳过备份或恢复中继日志。

    请注意

    如果用户运行刷新日志语句,当副本正在进行备份时,备份过程将失败。使用——skip-relaylog选项,如果您希望刷新日志语句将在备份期间运行,并且没有必要在备份中包括中继日志。

  • ——no-redo-log-archive

    对于MySQL Enterprise Backup 8.0.17及更高版本:不使用重做日志进行归档备份时在服务器上,默认使用。该选项对备份以外的操作没有任何影响。看到第七章,使用重做日志归档进行备份获取详细信息。

  • ——skip-final-rescan

    对于MySQL Enterprise Backup 8.0.16及更高版本:跳过对被DDL操作修改过的InnoDB表的最后一次重新扫描,这应该是在DDL操作之后进行的mysqlbackup将数据库置于备份锁备份操作即将结束。这可能会缩短锁的持续时间,并减少备份对服务器正常操作的影响,特别是在备份许多表的时候。

    对于MySQL Enterprise Backup 8.0.15及之前版本:跳过对被DDL操作修改过的InnoDB表的最终重新扫描,这应该是在备份操作接近尾声的时候数据库被读锁定之后发生的。这可能会缩短锁的持续时间,并减少备份对服务器正常操作的影响,特别是在备份许多表的时候。

    警告

    该选项可能会导致备份不完整或不一致,如果在备份过程中,对任何InnoDB表执行DDL操作file-per-table表空间在MySQL数据目录(例如,anyInnoDB表创建使用数据目录表选项).

    选项将忽略用于备份的选项——incremental-with-redo-log-only选项和用于非备份操作。

  • ——optimistic-time(=日期-时间

    命令行格式 ——optimistic-time =日期-时间
    类型 字符串
    默认值 现在

    使用选项指定的值执行乐观备份乐观的时间-一个时间点之后,没有被修改的表被当作不活跃的表。不活跃的表被认为在备份过程中不太可能改变。不活动的表在备份的乐观阶段进行备份,其他所有表在正常阶段进行备份。看到4.3.6节,“进行乐观备份”关于乐观备份的概念、用例和命令示例的详细信息。

    指定该选项的可接受格式包括:

    • 现在:这包括进入备份过程乐观阶段的所有表。如果不指定值,则为该选项的默认值。

    • {号码}{单位}:表示乐观时间为过去某一时刻的某一持续时间。{单位}可以是其中之一吗个月小时,分钟.这种格式的选项字符串的一些示例包括:5年2天13个月23小时,35分钟

    • 下列任何一种形式的日期-时间格式:YYMMDD名称YYMMDDHHMMSSYYYYMMDDHHMMSSYY-MM-DDYYYY-MM-DDYY-MM-DD HH.MM.SS,或YYYYMMDDTHHMMSS(T是这个角色T).

    当两个optimistic-timeoptimistic-busy-tables在确定哪些表要在乐观阶段进行备份时,这些选项会产生冲突,optimistic-busy-tables优先于optimistic-time

  • ——optimistic-busy-tables正则表达式

    命令行格式 ——optimistic-busy-tables = REGEXP
    类型 字符串

    执行乐观备份,使用选项中指定的正则表达式来选择在乐观备份的第一阶段将跳过的表,因为这些表可能在备份过程中被修改。表的完全限定名称(形式为database_nametable_name)匹配的正则表达式取繁忙的表,这将在第二或正常的备份阶段。正则表达式不匹配完全限定名的表被视为不活跃的表,将在第一个或乐观备份阶段。看到4.3.6节,“进行乐观备份”关于乐观备份的概念、用例和命令示例的详细信息。

    MySQL企业备份将抛出一个错误,如果使用该选项,但没有提供它的正则表达式。

    当两个optimistic-timeoptimistic-busy-tables使用了一些选项,它们在确定要创建哪些表时发生冲突乐观optimistic-busy-tables优先于optimistic-time

  • ——free-os-buffers

    在备份操作结束时,通过将所有数据从缓冲区缓存同步到硬盘来释放系统缓冲区缓存。对于存储设备速度较慢的系统和包含许多表的数据库,使用该选项可能会显著增加备份时间。

    默认值:禁用自动同步。