

# Aurora MySQL 全局状态变量
<a name="AuroraMySQL.Reference.GlobalStatusVars"></a>

 Aurora MySQL 包括来自社区 MySQL 的状态变量和 Aurora 独有的变量。您可以检查这些变量，来了解数据库引擎内部正在发生的事情。有关社区 MySQL 中状态变量的更多信息，请参阅社区 MySQL 8.0 文档中的 [Server Status Variables](https://dev.mysql.com/doc/refman/8.0/en/server-status-variables.html)。

您可以使用如下语句查找 Aurora MySQL 全局状态变量的当前值：

```
show global status like '%aurora%';
```

**注意**  
数据库引擎重新启动时会清除全局状态变量。

下表描述了 Aurora MySQL 使用的全局状态变量。


| 名称 | 描述 | 
| --- | --- | 
|  `AuroraDb_commits`  |  自上次重启以来的提交总数。  | 
|  `AuroraDb_commit_latency`  |  自上次重启以来的聚合提交延迟。  | 
|  `AuroraDb_ddl_stmt_duration`  |  自上次重启以来的聚合 DDL 延迟。  | 
|  `AuroraDb_select_stmt_duration`  |  自上次重启以来的聚合 `SELECT` 语句延迟。  | 
|  `AuroraDb_insert_stmt_duration`  |  自上次重启以来的聚合 `INSERT` 语句延迟。  | 
|  `AuroraDb_update_stmt_duration`  |  自上次重启以来的聚合 `UPDATE` 语句延迟。  | 
|  `AuroraDb_delete_stmt_duration`  |  自上次重启以来的聚合 `DELETE` 语句延迟。  | 
|  `Aurora_binlog_io_cache_allocated`  | 分配给二进制日志 I/O 缓存的字节数。 | 
|  `Aurora_binlog_io_cache_read_requests`  |  向二进制日志 I/O 缓存发出的读取请求数。  | 
|  `Aurora_binlog_io_cache_reads`  |  从二进制日志 I/O 缓存提供的读取请求数。  | 
|  `Aurora_enhanced_binlog`  |  指示是为此数据库实例启用还是禁用了增强型二进制日志。有关更多信息，请参阅 [为 Aurora MySQL 设置增强型二进制日志](AuroraMySQL.Enhanced.binlog.md)。  | 
|  `Aurora_external_connection_count`  |  与数据库实例的数据库连接数，不包括用于数据库运行状况检查的 RDS 服务连接。  | 
|  `Aurora_fast_insert_cache_hits`  |  在成功检索和验证缓存游标时递增的计数器。有关快速插入缓存的更多信息，请参阅[Amazon Aurora MySQL 性能增强](Aurora.AuroraMySQL.Overview.md#Aurora.AuroraMySQL.Performance)。  | 
|  `Aurora_fast_insert_cache_misses`  |  当缓存游标不再有效且 Aurora 执行常规索引遍历时递增的计数器。有关快速插入缓存的更多信息，请参阅[Amazon Aurora MySQL 性能增强](Aurora.AuroraMySQL.Overview.md#Aurora.AuroraMySQL.Performance)。  | 
|  `Aurora_fts_cache_memory_used`  |  InnoDB 全文搜索系统所使用的内存量（以字节为单位）。此变量适用于 Aurora MySQL 版本 3.07 及更高版本。  | 
|  `Aurora_fwd_master_dml_stmt_count`  |  转发到此写入器数据库实例的 DML 语句总数。此变量适用于 Aurora MySQL 版本 2。  | 
|  `Aurora_fwd_master_dml_stmt_duration`  |  转发到此写入器数据库实例的 DML 语句的总持续时间。此变量适用于 Aurora MySQL 版本 2。  | 
|  `Aurora_fwd_master_errors_rpc_timeout`  |  在写入器上建立转发连接失败的次数。  | 
|  `Aurora_fwd_master_errors_session_limit`  |  由于写入器上的 `session full` 而被拒绝的转发查询数。  | 
|  `Aurora_fwd_master_errors_session_timeout`  |  由于写入器超时而结束转发会话的次数。  | 
|  `Aurora_fwd_master_open_sessions`  |  写入器数据库实例上的转发会话数。此变量适用于 Aurora MySQL 版本 2。  | 
|  `Aurora_fwd_master_select_stmt_count`  |  转发到此写入器数据库实例的 `SELECT` 语句总数。此变量适用于 Aurora MySQL 版本 2。  | 
|  `Aurora_fwd_master_select_stmt_duration`  |  转发到此写入器数据库实例的 `SELECT` 语句的总持续时间。此变量适用于 Aurora MySQL 版本 2。  | 
|  `Aurora_fwd_writer_dml_stmt_count`  |  转发到此写入器数据库实例的 DML 语句总数。此变量适用于 Aurora MySQL 版本 3。  | 
|  `Aurora_fwd_writer_dml_stmt_duration`  |  转发到此写入器数据库实例的 DML 语句的总持续时间。此变量适用于 Aurora MySQL 版本 3。  | 
|  `Aurora_fwd_writer_errors_rpc_timeout`  |  在写入器上建立转发连接失败的次数。  | 
|  `Aurora_fwd_writer_errors_session_limit`  |  由于写入器上的 `session full` 而被拒绝的转发查询数。  | 
|  `Aurora_fwd_writer_errors_session_timeout`  |  由于写入器超时而结束转发会话的次数。  | 
|  `Aurora_fwd_writer_open_sessions`  |  写入器数据库实例上的转发会话数。此变量适用于 Aurora MySQL 版本 3。  | 
|  `Aurora_fwd_writer_select_stmt_count`  |  转发到此写入器数据库实例的 `SELECT` 语句总数。此变量适用于 Aurora MySQL 版本 3。  | 
|  `Aurora_fwd_writer_select_stmt_duration`  |  转发到此写入器数据库实例的 `SELECT` 语句的总持续时间。此变量适用于 Aurora MySQL 版本 3。  | 
|  `Aurora_lockmgr_buffer_pool_memory_used`  |  Aurora MySQL 锁定管理器正在使用的缓冲池内存量（以字节为单位）。  | 
|  `Aurora_lockmgr_memory_used`  |  Aurora MySQL 锁定管理器正在使用的内存量（以字节为单位）。  | 
|  `Aurora_ml_actual_request_cnt`  |  在数据库实例用户运行的所有查询中，Aurora MySQL 对 Aurora 机器学习服务发出的请求次数总计。有关更多信息，请参阅 [将 Amazon Aurora 机器学习与 Aurora MySQL 结合使用](mysql-ml.md)。  | 
|  `Aurora_ml_actual_response_cnt`  |  在数据库实例用户运行的所有查询中，Aurora MySQL 从 Aurora 机器学习服务接收的响应次数总计。有关更多信息，请参阅 [将 Amazon Aurora 机器学习与 Aurora MySQL 结合使用](mysql-ml.md)。  | 
|  `Aurora_ml_cache_hit_cnt`  |  在数据库实例用户运行的所有查询中，Aurora MySQL 从 Aurora 机器学习服务接收的内部缓存命中次数总计。有关更多信息，请参阅 [将 Amazon Aurora 机器学习与 Aurora MySQL 结合使用](mysql-ml.md)。  | 
|  `Aurora_ml_logical_request_cnt`  |  自上次状态重置以来，数据库实例评估的要发送到 Aurora 机器学习服务的逻辑请求数。根据是否使用了批处理，此值可能高于 `Aurora_ml_actual_request_cnt`。有关更多信息，请参阅 [将 Amazon Aurora 机器学习与 Aurora MySQL 结合使用](mysql-ml.md)。  | 
|  `Aurora_ml_logical_response_cnt`  |  在数据库实例用户运行的所有查询中，Aurora MySQL 从 Aurora 机器学习服务接收的响应次数总计。有关更多信息，请参阅 [将 Amazon Aurora 机器学习与 Aurora MySQL 结合使用](mysql-ml.md)。  | 
|  `Aurora_ml_retry_request_cnt`  |  自上次状态重置以来，数据库实例已向 Aurora 机器学习服务发送的重试请求数。有关更多信息，请参阅 [将 Amazon Aurora 机器学习与 Aurora MySQL 结合使用](mysql-ml.md)。  | 
|  `Aurora_ml_single_request_cnt`  |  在数据库实例用户运行的所有查询中，非批处理模式评估的 Aurora 机器学习函数总计。有关更多信息，请参阅 [将 Amazon Aurora 机器学习与 Aurora MySQL 结合使用](mysql-ml.md)。  | 
|  `aurora_oom_avoidance_recovery_state`  |  表示对于此数据库实例，Aurora 内存不足（OOM，Out-Of-Memory）避免恢复处于 `ACTIVE` 还是 `INACTIVE` 状态。 此变量适用于 Aurora MySQL 版本 3.06.0 及更高版本。  | 
|  `aurora_oom_reserved_mem_enter_kb`  |  表示在 Aurora 的 OOM 处理机制中，进入 `RESERVED` 状态的阈值。 当服务器上的可用内存低于此阈值时，`aurora_oom_status` 会变为 `RESERVED`，表示服务器的内存使用量已接近临界水平。 此变量适用于 Aurora MySQL 版本 3.06.0 及更高版本。  | 
|  `aurora_oom_reserved_mem_exit_kb`  |  表示在 Aurora 的 OOM 处理机制中，退出 `RESERVED` 状态的阈值。 当服务器上的可用内存上升超过此阈值时，`aurora_oom_status` 将恢复为 `NORMAL`，表示服务器已恢复到更稳定的状态，具有足够的内存资源。 此变量适用于 Aurora MySQL 版本 3.06.0 及更高版本。  | 
|  `aurora_oom_status`  |  表示此数据库实例的当前 OOM 状态。当该值为 `NORMAL` 时，表示有足够的内存资源。 如果该值更改为 `RESERVED`，则表示服务器的可用内存不足。根据 `aurora_oom_response` 参数配置来采取操作。 有关更多信息，请参阅 [排查 Aurora MySQL 数据库内存不足问题](AuroraMySQLOOM.md)。 此变量适用于 Aurora MySQL 版本 3.06.0 及更高版本。  | 
|  `Aurora_pq_bytes_returned`  |  在并行查询期间传输到头节点的元组数据结构的字节数。除以 16,384 以与 `Aurora_pq_pages_pushed_down` 进行比较。  | 
|  `Aurora_pq_max_concurrent_requests`  |  可以在该 Aurora 数据库实例上并发运行的最大并行查询会话数。这是一个取决于 Amazon 数据库实例类的固定数字。  | 
|  `Aurora_pq_pages_pushed_down`  |  并行查询避免通过网络传输到头节点的数据页面数量（每个页面具有 16 KiB 的固定大小）。  | 
|  `Aurora_pq_request_attempted`  |  请求的并行查询会话数。该值可能表示每个查询具有多个会话，具体取决于 SQL 结构，如子查询和联接。  | 
|  `Aurora_pq_request_executed`  |  成功运行的并行查询会话数。  | 
|  `Aurora_pq_request_failed`  |  向客户端返回错误的并行查询会话数。在某些情况下，并行查询请求可能会失败，例如，由于在存储层中出现问题。在这些情况下，将使用非并行查询机制重试失败的查询部分。如果重试的查询也失败，则会向客户端返回错误并增加该计数器。  | 
|  `Aurora_pq_request_in_progress`  |  当前运行的并行查询会话数。该数字适用于您连接到的特定 Aurora 数据库实例，而不适用于整个 Aurora 数据库集群。要查看数据库实例是否接近其并发限制，请将该值与 `Aurora_pq_max_concurrent_requests` 进行比较。  | 
|  `Aurora_pq_request_not_chosen`  |  未选择并行查询以满足查询条件的次数。该值是几个其他更精细的计数器的总和。即使没有实际执行查询，`EXPLAIN` 语句也可能增加此计数器。  | 
|  `Aurora_pq_request_not_chosen_below_min_rows`  |  由于表中的行数而未选择并行查询的次数。即使没有实际执行查询，`EXPLAIN` 语句也可能增加此计数器。  | 
|  `Aurora_pq_request_not_chosen_column_bit`  |  由于投影列的列表中的数据类型不受支持而使用非并行查询处理路径的并行查询请求数。  | 
|  `Aurora_pq_request_not_chosen_column_geometry`  |  由于表具有 `GEOMETRY` 数据类型的列而使用非并行查询处理路径的并行查询请求数。有关删除此限制的 Aurora MySQL 版本的信息，请参阅 [将并行查询集群升级到 Aurora MySQL 版本 3](aurora-mysql-parallel-query-optimizing.md#aurora-mysql-parallel-query-upgrade-pqv2)。  | 
|  `Aurora_pq_request_not_chosen_column_lob`  |  由于表具有 `LOB` 数据类型的列或具有（由于声明的长度）而在外部存储的 `VARCHAR` 列，因此使用非并行查询处理路径的并行查询请求数。有关删除此限制的 Aurora MySQL 版本的信息，请参阅 [将并行查询集群升级到 Aurora MySQL 版本 3](aurora-mysql-parallel-query-optimizing.md#aurora-mysql-parallel-query-upgrade-pqv2)。  | 
|  `Aurora_pq_request_not_chosen_column_virtual`  |  由于表包含虚拟列而使用非并行查询处理路径的并行查询请求数。  | 
|  `Aurora_pq_request_not_chosen_custom_charset`  |  由于表具有带自定义字符集的列而使用非并行查询处理路径的并行查询请求数。  | 
|  `Aurora_pq_request_not_chosen_fast_ddl`  |  由于表当前正在被快速 DDL `ALTER` 语句更改而使用非并行查询处理路径的并行查询请求数。  | 
|  `Aurora_pq_request_not_chosen_few_pages_outside_buffer_pool`  |  由于没有足够的未缓冲表数据以值得运行并行查询而未选择并行查询的次数，即使缓冲池中的表数据少于 95%。  | 
|  `Aurora_pq_request_not_chosen_full_text_index`  |  由于表具有全文索引而使用非并行查询处理路径的并行查询请求数。  | 
|  `Aurora_pq_request_not_chosen_high_buffer_pool_pct`  |  由于在缓冲池中具有较高比例的表数据（目前大于 95%）而未选择并行查询的次数。在这些情况下，优化程序确定从缓冲池中读取数据更高效。即使没有实际执行查询，`EXPLAIN` 语句也可能增加此计数器。  | 
|  `Aurora_pq_request_not_chosen_index_hint`  |  由于查询包含索引提示而使用非并行查询处理路径的并行查询请求数。  | 
|  `Aurora_pq_request_not_chosen_innodb_table_format`  |  由于表使用不受支持的 InnoDB 行格式，因此使用非并行查询处理路径的并行查询请求数。Aurora 并行查询仅适用于 `COMPACT`、`REDUNDANT` 和 `DYNAMIC` 行格式。  | 
|  `Aurora_pq_request_not_chosen_long_trx`  |  由于正在长时间运行的事务中启动查询而使用非并行查询处理路径的并行查询请求数。即使没有实际执行查询，`EXPLAIN` 语句也可能增加此计数器。  | 
|  `Aurora_pq_request_not_chosen_no_where_clause`  |  由于查询不包含任何 `WHERE` 子句而使用非并行查询处理路径的并行查询请求数。  | 
|  `Aurora_pq_request_not_chosen_range_scan`  |  由于查询对索引使用范围扫描而使用非并行查询处理路径的并行查询请求数。  | 
|  `Aurora_pq_request_not_chosen_row_length_too_long`  |  由于所有列的总组合长度过长而使用非并行查询处理路径的并行查询请求数。  | 
|  `Aurora_pq_request_not_chosen_small_table`  |  由于表的总大小（由行数和平均行长度确定）而未选择并行查询的次数。即使没有实际执行查询，`EXPLAIN` 语句也可能增加此计数器。  | 
|  `Aurora_pq_request_not_chosen_temporary_table`  |  由于查询引用了临时表（这些临时表使用不受支持的 `MyISAM` 或 `memory` 表类型）而使用非并行查询处理路径的并行查询请求数。  | 
|  `Aurora_pq_request_not_chosen_tx_isolation`  |  由于查询使用不受支持的事务隔离级别而使用非并行查询处理路径的并行查询请求数。在读取器数据库实例上，并行查询仅适用于 `REPEATABLE READ` 和 `READ COMMITTED` 隔离级别。  | 
|  `Aurora_pq_request_not_chosen_update_delete_stmts`  |  由于查询是 `UPDATE` 或 `DELETE` 语句的一部分而使用非并行查询处理路径的并行查询请求数。  | 
|  `Aurora_pq_request_not_chosen_unsupported_access`  |  由于 `WHERE` 子句不符合并行查询条件而使用非并行查询处理路径的并行查询请求数。如果查询不需要数据密集型扫描，或者查询是 `DELETE` 或 `UPDATE` 语句，则会出现该结果。  | 
|  `Aurora_pq_request_not_chosen_unsupported_storage_type`  |  由于 Aurora MySQL 数据库集群未使用支持的 Aurora 集群存储配置，而使用非并行查询处理路径的并行查询请求的数量。有关更多信息，请参阅 [限制](aurora-mysql-parallel-query.md#aurora-mysql-parallel-query-limitations)。 此参数适用于 Aurora MySQL 版本 3.04 及更高版本。  | 
|  `Aurora_pq_request_throttled`  |  由于在特定 Aurora 数据库实例上已运行的最大并发并行查询数而未选择并行查询的次数。  | 
|  `Aurora_repl_bytes_received`  |  自上次重启以来复制到 Aurora MySQL 读取器数据库实例的字节数。有关更多信息，请参阅 [使用 Amazon Aurora MySQL 进行复制](AuroraMySQL.Replication.md)。  | 
|  `Aurora_reserved_mem_exceeded_incidents`  |  自上次重启以来引擎超过预留内存限制的次数。如果配置了 `aurora_oom_response`，则此阈值定义何时触发避免内存不足（OOM）的活动。有关 Aurora MySQL OOM 响应的更多信息，请参阅[排查 Aurora MySQL 数据库内存不足问题](AuroraMySQLOOM.md)。  | 
|  `aurora_temptable_max_ram_allocation`  |  自上次重启以来内部临时表在任一时候使用的最大内存量（以字节为单位）。  | 
|  `aurora_temptable_ram_allocation`  |  内部临时表使用的当前内存量（以字节为单位）。  | 
|  `Aurora_in_memory_relaylog_status`  |  内存中继日志功能的当前状态，值可以为 ENABLED 或 DISABLED。  | 
|  `Aurora_in_memory_relaylog_disabled_reason`  |  显示当前内存中继日志功能状态的原因，如果禁用该功能，则显示一条消息来解释有关禁用该功能的原因。  | 
|  `Aurora_in_memory_relaylog_fallback_count`  |  显示内存中继日志功能回退到持久中继日志模式（旧版）的总数。回退可能是由于单个事件大于缓存大小（当前为 128 MB）或事务重试超过副本事务重试限制 replica\$1transaction\$1retries 所致。  | 
|  `Aurora_in_memory_relaylog_recovery_count`  |  显示自动执行的内存中继日志恢复总数。此计数包括回退总数以及临时回退后自动模式切换回内存中继日志模式的次数。  | 
|  `Aurora_thread_pool_thread_count`  |  Aurora 线程池中的当前线程数。有关 Aurora MySQL 中线程池的更多信息，请参阅[线程池](AuroraMySQL.Managing.Tuning.concepts.md#AuroraMySQL.Managing.Tuning.concepts.processes.pool)。  | 
|  `Aurora_tmz_version`  |  表示数据库集群使用的时区信息的当前版本。这些值遵循互联网号码分配机构（IANA）格式：`YYYYsuffix`，例如 `2022a` 和 `2023c`。 此参数适用于 Aurora MySQL 版本 2.12 及更高版本和版本 3.04 及更高版本。  | 
|  `Aurora_zdr_oom_threshold`  |  表示内存阈值，以千字节（KB）为单位，达到该阈值时，Aurora 数据库实例将启动零停机重启（ZDR，Zero Downtime Restart），以便从潜在的内存相关问题中恢复。  | 
|  `server_aurora_das_running`  |  表示在此数据库实例上是启用还是禁用了数据库活动流（DAS）。有关更多信息，请参阅 [使用数据库活动流监控 Amazon Aurora](DBActivityStreams.md)。  | 

## 不适用于 Aurora MySQL 的 MySQL 状态变量
<a name="AuroraMySQL.Reference.StatusVars.Inapplicable"></a><a name="status_vars"></a>

 由于 Aurora MySQL 与 MySQL 之间存在架构差异，有些 MySQL 状态变量不适用于 Aurora MySQL。

 以下 MySQL 状态变量不适用于 Aurora MySQL。此列表并不详尽。
+  `innodb_buffer_pool_bytes_dirty` 
+  `innodb_buffer_pool_pages_dirty` 
+  `innodb_buffer_pool_pages_flushed` 

Aurora MySQL 版本 3 删除了 Aurora MySQL 版本 2 中的以下状态变量：
+  `AuroraDb_lockmgr_bitmaps0_in_use` 
+  `AuroraDb_lockmgr_bitmaps1_in_use` 
+  `AuroraDb_lockmgr_bitmaps_mem_used` 
+  `AuroraDb_thread_deadlocks` 
+  `available_alter_table_log_entries` 
+  `Aurora_lockmgr_memory_used` 
+  `Aurora_missing_history_on_replica_incidents` 
+  `Aurora_new_lock_manager_lock_release_cnt` 
+  `Aurora_new_lock_manager_lock_release_total_duration_micro` 
+  `Aurora_new_lock_manager_lock_timeout_cnt` 
+  `Aurora_total_op_memory` 
+  `Aurora_total_op_temp_space` 
+  `Aurora_used_alter_table_log_entries` 
+  `Aurora_using_new_lock_manager` 
+  `Aurora_volume_bytes_allocated` 
+  `Aurora_volume_bytes_left_extent` 
+  `Aurora_volume_bytes_left_total` 
+  `Com_alter_db_upgrade` 
+  `Compression` 
+  `External_threads_connected` 
+  `Innodb_available_undo_logs` 
+  `Last_query_cost` 
+  `Last_query_partial_plans` 
+  `Slave_heartbeat_period` 
+  `Slave_last_heartbeat` 
+  `Slave_received_heartbeats` 
+  `Slave_retried_transactions` 
+  `Slave_running` 
+  `Time_since_zero_connections` 

这些 MySQL 状态变量在 Aurora MySQL 版本 2 中可用，但它们在 Aurora MySQL 版本 3 中不可用：
+  `Innodb_redo_log_enabled` 
+  `Innodb_undo_tablespaces_total` 
+  `Innodb_undo_tablespaces_implicit` 
+  `Innodb_undo_tablespaces_explicit` 
+  `Innodb_undo_tablespaces_active` 