暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

5.6.7.12克隆系统变量

原创 由迪 2020-09-08
1051

本节描述控制克隆插件操作的系统变量。如果启动时指定的值不正确,则克隆插件可能无法正确初始化,并且服务器不会加载它。在这种情况下,服务器也可能会为其他克隆设置生成错误消息,因为它无法识别它们。

每个系统变量都有一个默认值。可以在服务器启动时使用命令行或选项文件中的选项设置系统变量。可以使用以下SET语句在运行时动态更改它们,该语句使您无需停止并重新启动服务器即可修改服务器的操作。

设置全局系统变量运行时值通常需要SYSTEM_VARIABLES_ADMIN 特权(或不建议使用的 SUPER特权)。有关更多信息,请参见第5.1.9.1节“系统变量特权”

克隆变量是在执行克隆操作的收件人MySQL服务器实例上配置的。

  • clone_autotune_concurrency

    命令行格式 --clone-autotune-concurrency
    介绍了 8.0.17
    系统变量 clone_autotune_concurrency
    范围 全局
    动态
    SET_VAR 提示适用 没有
    类型 布尔型
    默认值 ON

    clone_autotune_concurrency 被使能(默认值),用于远程操作克隆额外线程动态生成,以优化数据传输速度。该设置仅适用于收件人MySQL服务器实例。

    在克隆操作期间,线程数将朝着当前线程数加倍的目标逐渐增加。在每个增量上评估对数据传输速度的影响。该过程根据以下规则继续或停止:

    • 如果数据传输速度随着增量的增加而下降5%以上,则该过程将停止。
    • 如果达到目标的25%后至少有5%的改善,则该过程继续。否则,该过程将停止。
    • 如果在达到目标的50%之后至少有10%的改善,则该过程继续。否则,该过程将停止。
    • 如果达到目标后至少有25%的改善,则该过程将继续朝着使当前线程数加倍的新目标进行。否则,该过程将停止。

    自动调整过程不支持减少线程数。

    clone_max_concurrency 变量定义可以产生的最大线程数。

    如果 clone_autotune_concurrency 禁用,则 clone_max_concurrency 定义为远程克隆操作产生的线程数。

  • clone_buffer_size

    命令行格式 --clone-buffer-size
    介绍了 8.0.17
    系统变量 clone_buffer_size
    范围 全局
    动态
    SET_VAR 提示适用 没有
    类型 整数
    默认值 4194304
    最低值 1048576
    最大值 268435456

    定义在本地克隆操作期间传输数据时使用的中间缓冲区的大小。此设置不适用于远程克隆操作。默认值为4兆字节(MiB)。较大的缓冲区大小可能允许I / O设备驱动程序并行获取数据,从而可以提高克隆性能。

  • clone_ddl_timeout

    命令行格式 --clone-ddl-timeout
    介绍了 8.0.17
    系统变量 clone_ddl_timeout
    范围 全局
    动态
    SET_VAR 提示适用 没有
    类型 整数
    默认值 300
    最低值 0
    最大值 2592000

    执行克隆操作时等待备份锁定的时间(以秒为单位)。此设置适用于施主和受主MySQL服务器实例。克隆操作不能与DDL操作同时运行。施主和受主MySQL服务器实例上需要备份锁。克隆操作等待当前的DDL操作完成。一旦获得了备份锁,DDL操作必须等待克隆操作完成。值为0表示克隆操作将不获取任何备份锁定。在这种情况下,如果同时尝试DDL操作,则克隆操作将失败并显示错误。

  • clone_enable_compression

    命令行格式 --clone-enable-compression
    介绍了 8.0.17
    系统变量 clone_enable_compression
    范围 全局
    动态
    SET_VAR 提示适用 没有
    类型 布尔型
    默认值 OFF

    在远程克隆操作期间在网络层启用数据压缩。压缩以节省CPU成本的方式节省了网络带宽。启用压缩可以提高数据传输速率。此设置仅适用于收件人MySQL服务器实例。

  • clone_max_concurrency

    命令行格式 --clone-max-concurrency
    介绍了 8.0.17
    系统变量 clone_max_concurrency
    范围 全局
    动态
    SET_VAR 提示适用 没有
    类型 整数
    默认值 16
    最低值 1
    最大值 128

    定义远程克隆操作的最大并发线程数。默认值为16。更多线程可以提高克隆性能,但也可以减少允许的并行客户端连接数,这可能会影响现有客户端连接的性能。此设置仅适用于收件人MySQL服务器实例。

    如果 clone_autotune_concurrency 启用(默认值), clone_max_concurrency则是可以为远程克隆操作动态产生的最大线程数。如果 clone_autotune_concurrency 禁用,则 clone_max_concurrency 定义为远程克隆操作产生的线程数。

    对于远程克隆操作,建议每个线程的最小数据传输速率为1兆字节(MiB)。远程克隆操作的数据传输速率由clone_max_data_bandwidth 变量控制 。

  • clone_max_data_bandwidth

    命令行格式 --clone-max-data-bandwidth
    介绍了 8.0.17
    系统变量 clone_max_data_bandwidth
    范围 全局
    动态
    SET_VAR 提示适用 没有
    类型 整数
    默认值 0
    最低值 0
    最大值 1048576

    定义远程克隆操作的最大数据传输速率,以每秒兆字节(MiB)为单位。此变量有助于管理克隆操作的性能影响。仅当施主磁盘I / O带宽饱和而影响性能时,才应设置限制。值0表示 “ 无限制 ”,它允许克隆操作以可能的最高数据传输速率运行。此设置仅适用于收件人MySQL服务器实例。

    每个线程的最小数据传输速率为每秒1 MiB。例如,如果有8个线程,则最小传输速率为每秒8 MiB。该 clone_max_concurrency 变量控制为远程克隆操作产生的最大线程数。

    指定的请求数据传输率 clone_max_data_bandwidth 可能与表中DATA_SPEED列所 报告的实际数据传输率不同performance_schema.clone_progress。如果克隆操作未达到所需的数据传输速率,并且您有可用的带宽,请检查接收者和捐助者上的I / O使用情况。如果存在未充分利用的带宽,则I / O是下一个最可能出现的瓶颈。

  • clone_max_network_bandwidth

    命令行格式 --clone-max-network-bandwidth
    介绍了 8.0.17
    系统变量 clone_max_network_bandwidth
    范围 全局
    动态
    SET_VAR 提示适用 没有
    类型 整数
    默认值 0
    最低值 0
    最大值 1048576

    指定远程克隆操作的最大近似网络传输速率,以每秒兆字节(MiB)为单位。此变量可用于管理克隆操作对网络带宽的性能影响。仅当网络带宽饱和时才应设置此参数,这会影响施主实例的性能。值0表示 “ 无限制 ”,它允许通过网络以尽可能高的数据传输速率进行克隆,从而提供最佳性能。此设置仅适用于收件人MySQL服务器实例。

  • clone_ssl_ca

    命令行格式 --clone-ssl-ca=file_name
    介绍了 8.0.14
    系统变量 clone_ssl_ca
    范围 全局
    动态
    SET_VAR 提示适用 没有
    类型 文档名称
    默认值 empty string

    指定证书颁发机构(CA)文件的路径。用于为远程克隆操作配置加密连接。此设置在接收者上配置,并在连接到捐赠者时使用。

  • clone_ssl_cert

    命令行格式 --clone-ssl-cert=file_name
    介绍了 8.0.14
    系统变量 clone_ssl_cert
    范围 全局
    动态
    SET_VAR 提示适用 没有
    类型 文档名称
    默认值 empty string

    指定公钥证书的路径。用于为远程克隆操作配置加密连接。此设置在接收者上配置,并在连接到捐赠者时使用。

  • clone_ssl_key

    命令行格式 --clone-ssl-key=file_name
    介绍了 8.0.14
    系统变量 clone_ssl_key
    范围 全局
    动态
    SET_VAR 提示适用 没有
    类型 文档名称
    默认值 empty string

    指定私钥文件的路径。用于为远程克隆操作配置加密连接。此设置在接收者上配置,并在连接到捐赠者时使用。

  • clone_valid_donor_list

    命令行格式 --clone-valid-donor-list=value
    介绍了 8.0.17
    系统变量 clone_valid_donor_list
    范围 全局
    动态
    SET_VAR 提示适用 没有
    类型
    默认值 NULL

    定义用于远程克隆操作的有效施主主机地址。此设置适用于收件人MySQL服务器实例。允许使用逗号分隔的值列表,格式如下: “ HOST1:PORT1,HOST2:PORT2,HOST3:PORT3”。不允许使用空格。

    clone_valid_donor_list 变量通过提供对克隆数据源的控制来增加一层安全性。配置所需 clone_valid_donor_list的特权与执行远程克隆操作所需的特权不同,后者允许将这些职责分配给不同的角色。配置 clone_valid_donor_list 需要 SYSTEM_VARIABLES_ADMIN 特权,而执行远程克隆操作则需要CLONE_ADMIN 特权。

    不支持Internet协议版本6(IPv6)地址格式。不支持Internet协议版本6(IPv6)地址格式。可以代替使用IPv6地址的别名。IPv4地址可以原样使用。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论