本节描述控制克隆插件操作的系统变量。如果启动时指定的值不正确,则克隆插件可能无法正确初始化,并且服务器不会加载它。在这种情况下,服务器也可能会为其他克隆设置生成错误消息,因为它无法识别它们。
每个系统变量都有一个默认值。可以在服务器启动时使用命令行或选项文件中的选项设置系统变量。可以使用以下SET语句在运行时动态更改它们,该语句使您无需停止并重新启动服务器即可修改服务器的操作。
设置全局系统变量运行时值通常需要SYSTEM_VARIABLES_ADMIN 特权(或不建议使用的 SUPER特权)。有关更多信息,请参见第5.1.9.1节“系统变量特权”。
克隆变量是在执行克隆操作的收件人MySQL服务器实例上配置的。
-
命令行格式 --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介绍了 8.0.17 系统变量 clone_buffer_size范围 全局 动态 是 SET_VAR提示适用没有 类型 整数 默认值 4194304最低值 1048576最大值 268435456定义在本地克隆操作期间传输数据时使用的中间缓冲区的大小。此设置不适用于远程克隆操作。默认值为4兆字节(MiB)。较大的缓冲区大小可能允许I / O设备驱动程序并行获取数据,从而可以提高克隆性能。
-
命令行格式 --clone-ddl-timeout介绍了 8.0.17 系统变量 clone_ddl_timeout范围 全局 动态 是 SET_VAR提示适用没有 类型 整数 默认值 300最低值 0最大值 2592000执行克隆操作时等待备份锁定的时间(以秒为单位)。此设置适用于施主和受主MySQL服务器实例。克隆操作不能与DDL操作同时运行。施主和受主MySQL服务器实例上需要备份锁。克隆操作等待当前的DDL操作完成。一旦获得了备份锁,DDL操作必须等待克隆操作完成。值为0表示克隆操作将不获取任何备份锁定。在这种情况下,如果同时尝试DDL操作,则克隆操作将失败并显示错误。
-
命令行格式 --clone-enable-compression介绍了 8.0.17 系统变量 clone_enable_compression范围 全局 动态 是 SET_VAR提示适用没有 类型 布尔型 默认值 OFF在远程克隆操作期间在网络层启用数据压缩。压缩以节省CPU成本的方式节省了网络带宽。启用压缩可以提高数据传输速率。此设置仅适用于收件人MySQL服务器实例。
-
命令行格式 --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介绍了 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介绍了 8.0.17 系统变量 clone_max_network_bandwidth范围 全局 动态 是 SET_VAR提示适用没有 类型 整数 默认值 0最低值 0最大值 1048576指定远程克隆操作的最大近似网络传输速率,以每秒兆字节(MiB)为单位。此变量可用于管理克隆操作对网络带宽的性能影响。仅当网络带宽饱和时才应设置此参数,这会影响施主实例的性能。值0表示 “ 无限制 ”,它允许通过网络以尽可能高的数据传输速率进行克隆,从而提供最佳性能。此设置仅适用于收件人MySQL服务器实例。
-
命令行格式 --clone-ssl-ca=file_name介绍了 8.0.14 系统变量 clone_ssl_ca范围 全局 动态 是 SET_VAR提示适用没有 类型 文档名称 默认值 empty string指定证书颁发机构(CA)文件的路径。用于为远程克隆操作配置加密连接。此设置在接收者上配置,并在连接到捐赠者时使用。
-
命令行格式 --clone-ssl-cert=file_name介绍了 8.0.14 系统变量 clone_ssl_cert范围 全局 动态 是 SET_VAR提示适用没有 类型 文档名称 默认值 empty string指定公钥证书的路径。用于为远程克隆操作配置加密连接。此设置在接收者上配置,并在连接到捐赠者时使用。
-
命令行格式 --clone-ssl-key=file_name介绍了 8.0.14 系统变量 clone_ssl_key范围 全局 动态 是 SET_VAR提示适用没有 类型 文档名称 默认值 empty string指定私钥文件的路径。用于为远程克隆操作配置加密连接。此设置在接收者上配置,并在连接到捐赠者时使用。
-
命令行格式 --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地址可以原样使用。




