10bet网址
MySQL 8.0参考手册
相关的文档10bet官方网站 下载本手册
PDF(美国Ltr)- 41.6 mb
PDF (A4)- 41.7 mb
HTML下载(TGZ)- 9.3 mb
HTML下载(Zip)- 9.4 mb
手册(TGZ)- 262.1 kb
手册(Zip)- 372.2 kb
信息(Gzip)- 4.0 mb
信息(邮政编码)- 4.0 mb
本手册节选

5.6.7.9监控克隆操作

本节描述监视克隆操作的选项。

使用性能模式克隆表监视克隆操作

克隆操作可能需要一些时间才能完成,这取决于数据量和与数据传输相关的其他因素。控件可以监视接收MySQL服务器实例上克隆操作的状态和进度clone_status而且clone_progress性能架构表。

请注意

clone_status而且clone_progressPerformance Schema表只能用于监视接收MySQL服务器实例上的克隆操作。要监视提供MySQL服务器实例上的克隆操作,请使用克隆阶段事件,如中所述使用性能模式阶段事件监视克隆操作

  • clone_status表提供当前或最近执行的克隆操作的状态。克隆操作有四种可能的状态:没有开始在进行中完成,失败的

  • clone_progress表按阶段提供当前或上次执行的克隆操作的进度信息。克隆操作的阶段包括数据下降拷贝文件PAGE_COPYREDO_COPYFILE_SYNC重新启动,复苏

选择而且执行访问性能模式克隆表需要性能模式上的特权。

查询克隆操作的状态。

  1. 连接到接收MySQL服务器实例。

  2. 查询clone_status表:

    SELECT STATE FROM performance_schema.clone_status;+-----------+ | 状态  | +-----------+ | 完成  | +-----------+

如果克隆操作期间发生失败,可以查询clone_status错误信息表:

SELECT STATE, ERROR_NO, ERROR_MESSAGE FROM performance_schema.clone_status;+-----------+----------+---------------+ | 状态| ERROR_NO | ERROR_MESSAGE  | +-----------+----------+---------------+ | xxxxxxxxxxx xxx失败| |” " | +-----------+----------+---------------+

要查看克隆操作的每个阶段的详细信息:

  1. 连接到接收MySQL服务器实例。

  2. 查询clone_progress表格例如,以下查询为克隆操作的每个阶段提供状态和结束时间数据:

    SELECT STAGE, STATE, END_TIME FROM performance_schema.clone_progress;+-----------+-----------+----------------------------+ | 阶段国家| | end_time  | +-----------+-----------+----------------------------+ | 下降数据| | 2019-01-27完成22:45:43.141261 | | | |完成文件副本2019-01-27 22:45:44.457572 | |页拷贝| | 2019-01-27完成22:45:44.577330 | | | | 2019-01-27完成重做副本22:45:44.679570 | | | | 2019-01-27完成文件同步22:45:44.918547 | | | |完成重启2019-01-27 22:45:48.583565 | | | |完成恢复2019-01-27 22:45:49.626595  | +-----------+-----------+----------------------------+

    有关可监控的其他克隆状态和进度数据点,请参阅第27.12.19节“性能模式克隆表”

使用性能模式阶段事件监视克隆操作

克隆操作可能需要一些时间才能完成,这取决于数据量和与数据传输相关的其他因素。有三个阶段事件用于监视克隆操作的进展。每个阶段事件报告WORK_COMPLETED而且WORK_ESTIMATED值。报告的值随着操作的进行而修改。

这种监视克隆操作的方法可用于提供方或接收方MySQL服务器实例。

按发生顺序,克隆操作阶段事件包括:

  • 复制innodb文件:表示克隆操作的文件拷贝阶段进度。WORK_ESTIMATED而且WORK_COMPLETED单元是文件块。要传输的文件数量在文件复制阶段的开始就知道了,块的数量是根据文件数量估计的。WORK_ESTIMATED设置为估计的文件块数。WORK_COMPLETED在每个块发送后更新。

  • 复制/复制页面:表示克隆操作的页面复制阶段的进度。WORK_ESTIMATED而且WORK_COMPLETED单位是页面。一旦文件复制阶段完成,就知道要传输的页数,并且WORK_ESTIMATED设置为此值。WORK_COMPLETED在发送每个页面后更新。

  • 执行/innodb/clone(重做拷贝):表示克隆操作的重做复制阶段的进度。WORK_ESTIMATED而且WORK_COMPLETED单元是重做块。一旦页面复制阶段完成,要传输的重做块的数量就知道了WORK_ESTIMATED设置为此值。WORK_COMPLETED在每个块发送后更新。

下面的示例演示如何启用阶段/ innodb /克隆%事件工具和相关使用者表来监视克隆操作。有关性能模式阶段事件工具和相关使用者的信息,请参见第27.12.5节“性能方案阶段事件表”

  1. 启用阶段/ innodb /克隆%仪器:

    mysql>更新performance_schema。setup_instruments SET ENABLED = 'YES' WHERE NAME LIKE 'stage/innodb/clone%';
  2. 启用阶段事件使用者表,其中包括events_stages_currentevents_stages_history,events_stages_history_long

    mysql>更新performance_schema。setup_consumers SET ENABLED = 'YES' WHERE NAME LIKE '%stages%';
  3. 运行克隆操作。在本例中,将本地数据目录克隆到名为cloned_dir

    mysql>克隆本地数据目录= '/path/to/cloned_dir';
  4. 通过查询“性能模式”查看克隆操作的进度events_stages_current表格所显示的阶段事件根据正在进行的克隆阶段而不同。的WORK_COMPLETED列显示已完成的工作。的WORK_ESTIMATED列显示所需的工作总数。

    mysql> SELECT EVENT_NAME, WORK_COMPLETED, WORK_ESTIMATED FROM performance_schema。WHERE EVENT_NAME LIKE 'stage/innodb/clone%';+--------------------------------+----------------+----------------+ | EVENT_NAME | WORK_COMPLETED | WORK_ESTIMATED  | +--------------------------------+----------------+----------------+ | 阶段/ innodb /克隆(重做副本)| 1 | 1  | +--------------------------------+----------------+----------------+

    events_stages_current如果克隆操作已完成,则表返回空集。在这种情况下,您可以检查events_stages_history表以查看已完成操作的事件数据。例如:

    SELECT EVENT_NAME, WORK_COMPLETED, WORK_ESTIMATED FROM events_stages_history WHERE EVENT_NAME LIKE 'stage/innodb/clone%'+--------------------------------+----------------+----------------+ | EVENT_NAME | WORK_COMPLETED | WORK_ESTIMATED  | +--------------------------------+----------------+----------------+ | 阶段/ innodb /克隆(文件副本)| 301 | 301 | |阶段/ innodb /克隆(复制页)| 0 | 0 | |阶段/ innodb /克隆(重做副本)| 1 | 1  | +--------------------------------+----------------+----------------+
使用性能模式克隆工具监视克隆操作

性能模式为克隆操作的高级性能监视提供工具。要查看可用的克隆工具,发出以下查询:

SELECT * FROM performance_schema。setup_instruments WHERE NAME LIKE WHERE NAME LIKE '%clone%';+----------------------------------------------+---------+ | 启用名字|  | +----------------------------------------------+---------+ | 等待/同步/互斥/ innodb / clone_snapshot_mutex没有| | |等待/同步/互斥/ innodb / clone_sys_mutex没有| | |等待/同步/互斥/ innodb / clone_task_mutex没有| | |等待/ io /文件/ innodb / innodb_clone_file |是| |阶段/ innodb /克隆(文件副本)|是| |阶段/ innodb /克隆(重做副本)|是| |阶段/ innodb /克隆(复制页)|是| |声明/文摘/克隆|是| |声明/克隆/当地|是| |声明/克隆/客户端|是| |声明/克隆/服务器|是| |内存/ innodb /克隆|是| |内存/克隆/数据|是的  | +----------------------------------------------+---------+
等工具

性能模式等待工具跟踪需要时间的事件。克隆等待事件工具包括:

  • 等待/同步/ / innodb / clone_snapshot_mutex互斥:跟踪克隆快照互斥锁的等待事件,互斥锁在多个克隆线程之间同步对动态快照对象(在捐赠者和接收者上)的访问。

  • 等待/同步/ / innodb / clone_sys_mutex互斥:跟踪克隆sys互斥锁的等待事件。在MySQL服务器实例中有一个克隆系统对象。这个互斥锁同步对施主端和受主端克隆系统对象的访问。它是由克隆线程和其他前台和后台线程获得的。

  • 等待/同步/ / innodb / clone_task_mutex互斥:跟踪克隆任务互斥锁的等待事件,用于克隆任务管理。的clone_task_mutex由克隆线程获取。

  • 等待/ io /文件/ innodb / innodb_clone_file:跟踪克隆操作的文件的所有I/O等待操作。

有关监控的信息InnoDB互斥锁等着看第15.16.2节“使用性能模式监视InnoDB互斥锁等待”.有关监视等待事件的一般信息,请参见第27.12.4节,“性能模式等待事件表”

阶段仪器

性能模式阶段事件跟踪语句执行过程中发生的步骤。克隆舞台事件仪器包括:

  • 复制innodb文件:表示克隆操作的文件拷贝阶段进度。

  • 执行/innodb/clone(重做拷贝):表示克隆操作的重做复制阶段的进度。

  • 复制/复制页面:表示克隆操作的页面复制阶段的进度。

有关使用阶段事件监视克隆操作的信息,请参见使用性能模式阶段事件监视克隆操作.有关监视阶段事件的一般信息,请参见第27.12.5节“性能方案阶段事件表”

声明仪器

性能架构语句事件跟踪语句的执行。当克隆操作启动时,由克隆语句工具跟踪的不同语句类型可以并行执行。您可以在Performance Schema语句事件表中观察这些语句事件。所执行的语句的数量取决于clone_max_concurrency而且clone_autotune_concurrency设置。

克隆语句事件工具包括:

  • 声明/文摘/克隆:在将任何克隆操作分类为本地、客户机或服务器操作类型之前,跟踪该操作的语句事件。

  • 声明/克隆/当地:跟踪本地克隆操作的克隆语句事件;在执行克隆当地声明。

  • 声明/克隆/客户端:跟踪发生在接收MySQL服务器实例上的远程克隆语句事件;在执行克隆实例关于收件人的声明。

  • 声明/克隆服务器:跟踪在MySQL服务器实例上发生的远程克隆语句事件;在执行克隆实例关于收件人的声明。

有关监视性能架构语句事件的信息,请参见第27.12.6节“性能模式声明事件表”

记忆工具

性能模式内存工具跟踪内存使用情况。克隆内存使用工具包括:

  • 内存/ innodb /克隆:跟踪分配的内存InnoDB对于动态快照。

  • 内存/克隆/数据:跟踪克隆插件在执行克隆操作时分配的内存。

有关使用性能架构监视内存使用情况的信息,请参见第27.12.20.10节“内存汇总表”

Com_clone状态变量

Com_clone的计数克隆语句执行。

有关更多信息,请参阅关于Com_xxx语句计数器变量第5.1.10节,“服务器状态变量”