分析 Aurora MySQL 中运行的查询 - Amazon Aurora
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

分析 Aurora MySQL 中运行的查询

Aurora MySQL 仅在摘要级别收集 SQL 统计信息。语句级别没有显示任何统计数据。

Aurora MySQL 中的摘要表

Performance Insights 从 events_statements_summary_by_digest 表中收集 SQL 摘要统计数据。events_statements_summary_by_digest 表由您的数据库管理。

此摘要表不提供移出策略。当表已满时,Amazon Web Services Management Console 将显示以下消息:

Performance Insights is unable to collect SQL Digest statistics on new queries because the table events_statements_summary_by_digest is full. Please truncate events_statements_summary_by_digest table to clear the issue. Check the User Guide for more details.

在这种情况下, Aurora MySQL 不会跟踪 SQL 查询。为了解决此问题,性能详情会在满足以下两个条件时自动截取摘要表:

  • 表已满。

  • 性能详情会自动管理性能架构。对于自动管理,performance_schema 参数必须设置为 0Source (源) 不应设置为 user

如果性能详情没有自动管理性能架构,请参阅 为 Aurora MySQL 上的 Performance Insights 启用性能架构

在 Amazon CLI 中,检查参数值的来源,方法是运行 describe-db-parameters 命令。

Aurora MySQL 的每秒统计数据

以下 SQL 统计数据适用于 Aurora MySQL 数据库集群

指标 Unit
db.sql_tokenized.stats.count_star_per_sec 每秒调用数
db.sql_tokenized.stats.sum_timer_wait_per_sec 每秒平均活动执行次数 (AAE)
db.sql_tokenized.stats.sum_select_full_join_per_sec 选择每秒完全联接数
db.sql_tokenized.stats.sum_select_range_check_per_sec 选择每秒范围检查数
db.sql_tokenized.stats.sum_select_scan_per_sec 选择每秒扫描数
db.sql_tokenized.stats.sum_sort_merge_passes_per_sec 对每秒合并传递数进行排序
db.sql_tokenized.stats.sum_sort_scan_per_sec 对每秒对扫描数进行排序
db.sql_tokenized.stats.sum_sort_range_per_sec 对每秒范围数进行排序
db.sql_tokenized.stats.sum_sort_rows_per_sec 对每秒行数进行排序
db.sql_tokenized.stats.sum_rows_affected_per_sec 每秒受影响的行数
db.sql_tokenized.stats.sum_rows_examined_per_sec 每秒检查的行数
db.sql_tokenized.stats.sum_rows_sent_per_sec 每秒发送的行数
db.sql_tokenized.stats.sum_created_tmp_disk_tables_per_sec 每秒创建的临时磁盘表数
db.sql_tokenized.stats.sum_created_tmp_tables_per_sec 每秒创建的临时表数
db.sql_tokenized.stats.sum_lock_time_per_sec 每秒锁定时间(以毫秒为单位)

Aurora MySQL 的每次调用统计数据

以下指标提供了 SQL 语句的每次调用统计数据。

指标 单位
db.sql_tokenized.stats.sum_timer_wait_per_call 每个调用的平均延迟(以毫秒为单位)
db.sql_tokenized.stats.sum_select_full_join_per_call 选择每次调用完全联接数
db.sql_tokenized.stats.sum_select_range_check_per_call 选择每次调用范围检查数
db.sql_tokenized.stats.sum_select_scan_per_call 选择每次调用扫描数
db.sql_tokenized.stats.sum_sort_merge_passes_per_call 对每次调用合并传递数进行排序
db.sql_tokenized.stats.sum_sort_scan_per_call 对每次调用扫描数进行排序
db.sql_tokenized.stats.sum_sort_range_per_call 对每次调用范围数进行排序
db.sql_tokenized.stats.sum_sort_rows_per_call 对每次调用行数进行排序
db.sql_tokenized.stats.sum_rows_affected_per_call 每次调用受影响的行数
db.sql_tokenized.stats.sum_rows_examined_per_call 每次调用检查的行数
db.sql_tokenized.stats.sum_rows_sent_per_call 每次调用发送的行数
db.sql_tokenized.stats.sum_created_tmp_disk_tables_per_call 每次调用创建的临时磁盘表数
db.sql_tokenized.stats.sum_created_tmp_tables_per_call 每次调用创建的临时表数
db.sql_tokenized.stats.sum_lock_time_per_call 每个调用的锁定时间(以毫秒为单位)

查看 Aurora MySQL 的 SQL 统计数据

统计数据可在 Database load(数据库负载)图表的 Top SQL(主要 SQL)选项卡中找到。

要查看 SQL 统计数据

  1. 通过以下网址打开 Amazon RDS 控制台:https://console.aws.amazon.com/rds/

  2. 请使用性能详情控制面板。

  3. 选择 SQL 选项卡然后展开查询。

    
								查看正在运行的查询的指标

通过选择图表右上角的齿轮图标来选择要显示的统计数据。

以下屏幕截图显示 Aurora MySQL 数据库实例的首选项。


						用于运行 Aurora MySQL 数据库实例查询的指标的首选项。