

# Aurora MySQL global status variables
<a name="AuroraMySQL.Reference.GlobalStatusVars"></a>

 Aurora MySQL includes status variables from community MySQL and variables that are unique to Aurora. You can examine these variables to learn about what's happening inside the database engine. For more information about the status variables in community MySQL, see [Server Status Variables](https://dev.mysql.com/doc/refman/8.0/en/server-status-variables.html) in the community MySQL 8.0 documentation. 

You can find the current values for Aurora MySQL global status variables by using a statement such as the following:

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

**Note**  
Global status variables are cleared when the DB engine reboots.

The following table describes the global status variables that Aurora MySQL uses.


| Name | Description | 
| --- | --- | 
|  `AuroraDb_commits`  |  The total number of commits since the last restart.  | 
|  `AuroraDb_commit_latency`  |  The aggregate commit latency since the last restart.  | 
|  `AuroraDb_ddl_stmt_duration`  |  The aggregate DDL latency since the last restart.  | 
|  `AuroraDb_select_stmt_duration`  |  The aggregate `SELECT` statement latency since the last restart.  | 
|  `AuroraDb_insert_stmt_duration`  |  The aggregate `INSERT` statement latency since the last restart.  | 
|  `AuroraDb_update_stmt_duration`  |  The aggregate `UPDATE` statement latency since the last restart.  | 
|  `AuroraDb_delete_stmt_duration`  |  The aggregate `DELETE` statement latency since the last restart.  | 
|  `Aurora_binlog_io_cache_allocated`  | The number of bytes allocated to the binlog I/O cache. | 
|  `Aurora_binlog_io_cache_read_requests`  |  The number of read requests made to the binlog I/O cache.  | 
|  `Aurora_binlog_io_cache_reads`  |  The number of read requests that were served from the binlog I/O cache.  | 
|  `Aurora_enhanced_binlog`  |  Indicates whether enhanced binlog is enabled or disabled for this DB instance. For more information, see [Setting up enhanced binlog for Aurora MySQL](AuroraMySQL.Enhanced.binlog.md).  | 
|  `Aurora_external_connection_count`  |  The number of database connections to the DB instance, excluding RDS service connections used for database health checks.  | 
|  `Aurora_fast_insert_cache_hits`  |  A counter that's incremented when the cached cursor is successfully retrieved and verified. For more information on the fast insert cache, see [Amazon Aurora MySQL performance enhancements](Aurora.AuroraMySQL.Overview.md#Aurora.AuroraMySQL.Performance).  | 
|  `Aurora_fast_insert_cache_misses`  |  A counter that's incremented when the cached cursor is no longer valid and Aurora performs a normal index traversal. For more information on the fast insert cache, see [Amazon Aurora MySQL performance enhancements](Aurora.AuroraMySQL.Overview.md#Aurora.AuroraMySQL.Performance).  | 
|  `Aurora_fts_cache_memory_used`  |  The amount of memory in bytes that the InnoDB full-text search system is using. This variable applies to Aurora MySQL version 3.07 and higher.  | 
|  `Aurora_fwd_master_dml_stmt_count`  |  The total number of DML statements forwarded to this writer DB instance. This variable applies to Aurora MySQL version 2.  | 
|  `Aurora_fwd_master_dml_stmt_duration`  |  The total duration of DML statements forwarded to this writer DB instance. This variable applies to Aurora MySQL version 2.  | 
|  `Aurora_fwd_master_errors_rpc_timeout`  |  The number of times a forwarded connection failed to be established on the writer.  | 
|  `Aurora_fwd_master_errors_session_limit`  |  The number of forwarded queries that get rejected due to `session full` on the writer.  | 
|  `Aurora_fwd_master_errors_session_timeout`  |  The number of times a forwarding session is ended due to a timeout on the writer.  | 
|  `Aurora_fwd_master_open_sessions`  |  The number of forwarded sessions on the writer DB instance. This variable applies to Aurora MySQL version 2.  | 
|  `Aurora_fwd_master_select_stmt_count`  |  The total number of `SELECT` statements forwarded to this writer DB instance. This variable applies to Aurora MySQL version 2.  | 
|  `Aurora_fwd_master_select_stmt_duration`  |  The total duration of `SELECT` statements forwarded to this writer DB instance. This variable applies to Aurora MySQL version 2.  | 
|  `Aurora_fwd_writer_dml_stmt_count`  |  The total number of DML statements forwarded to this writer DB instance. This variable applies to Aurora MySQL version 3.  | 
|  `Aurora_fwd_writer_dml_stmt_duration`  |  The total duration of DML statements forwarded to this writer DB instance. This variable applies to Aurora MySQL version 3.  | 
|  `Aurora_fwd_writer_errors_rpc_timeout`  |  The number of times a forwarded connection failed to be established on the writer.  | 
|  `Aurora_fwd_writer_errors_session_limit`  |  The number of forwarded queries that get rejected due to `session full` on the writer.  | 
|  `Aurora_fwd_writer_errors_session_timeout`  |  The number of times a forwarding session is ended due to a timeout on the writer.  | 
|  `Aurora_fwd_writer_open_sessions`  |  The number of forwarded sessions on the writer DB instance. This variable applies to Aurora MySQL version 3.  | 
|  `Aurora_fwd_writer_select_stmt_count`  |  The total number of `SELECT` statements forwarded to this writer DB instance. This variable applies to Aurora MySQL version 3.  | 
|  `Aurora_fwd_writer_select_stmt_duration`  |  The total duration of `SELECT` statements forwarded to this writer DB instance. This variable applies to Aurora MySQL version 3.  | 
|  `Aurora_lockmgr_buffer_pool_memory_used`  |  The amount of buffer pool memory in bytes that the Aurora MySQL lock manager is using.  | 
|  `Aurora_lockmgr_memory_used`  |  The amount of memory in bytes that the Aurora MySQL lock manager is using.  | 
|  `Aurora_ml_actual_request_cnt`  |  The aggregate request count that Aurora MySQLmakes to the Aurora machine learning services across all queries run by users of the DB instance. For more information, see [Using Amazon Aurora machine learning with Aurora MySQL](mysql-ml.md).  | 
|  `Aurora_ml_actual_response_cnt`  |  The aggregate response count that Aurora MySQL receives from the Aurora machine learning services across all queries run by users of the DB instance. For more information, see [Using Amazon Aurora machine learning with Aurora MySQL](mysql-ml.md).  | 
|  `Aurora_ml_cache_hit_cnt`  |  The aggregate internal cache hit count that Aurora MySQL receives from the Aurora machine learning services across all queries run by users of the DB instance. For more information, see [Using Amazon Aurora machine learning with Aurora MySQL](mysql-ml.md).  | 
|  `Aurora_ml_logical_request_cnt`  |  The number of logical requests that the DB instance has evaluated to be sent to the Aurora machine learning services since the last status reset. Depending on whether batching has been used, this value can be higher than `Aurora_ml_actual_request_cnt`. For more information, see [Using Amazon Aurora machine learning with Aurora MySQL](mysql-ml.md).  | 
|  `Aurora_ml_logical_response_cnt`  |  The aggregate response count that Aurora MySQL receives from the Aurora machine learning services across all queries run by users of the DB instance. For more information, see [Using Amazon Aurora machine learning with Aurora MySQL](mysql-ml.md).  | 
|  `Aurora_ml_retry_request_cnt`  |  The number of retried requests that the DB instance has sent to the Aurora machine learning services since the last status reset. For more information, see [Using Amazon Aurora machine learning with Aurora MySQL](mysql-ml.md).  | 
|  `Aurora_ml_single_request_cnt`  |  The aggregate count of Aurora machine learning functions that are evaluated by non-batch mode across all queries run by users of the DB instance. For more information, see [Using Amazon Aurora machine learning with Aurora MySQL](mysql-ml.md).  | 
|  `aurora_oom_avoidance_recovery_state`  |  Indicates whether Aurora out-of-memory (OOM) avoidance recovery is in the `ACTIVE` or `INACTIVE` state for this DB instance. This variable applies to Aurora MySQL version 3.06.0 and higher.  | 
|  `aurora_oom_reserved_mem_enter_kb`  |  Represents the threshold for entering the `RESERVED` state in Aurora's OOM handling mechanism. When the available memory on the server falls below this threshold, `aurora_oom_status` changes to `RESERVED`, indicating that the server is approaching a critical level of memory usage. This variable applies to Aurora MySQL version 3.06.0 and higher.  | 
|  `aurora_oom_reserved_mem_exit_kb`  |  Represents the threshold for exiting the `RESERVED` state in Aurora's OOM handling mechanism. When the available memory on the server rises above this threshold, `aurora_oom_status` reverts to `NORMAL`, indicating that the server has returned to a more stable state with sufficient memory resources. This variable applies to Aurora MySQL version 3.06.0 and higher.  | 
|  `aurora_oom_status`  |  Represents the current OOM status of this DB instance. When the value is `NORMAL`, it indicates that there are sufficient memory resources. If the value changes to `RESERVED`, it indicates that the server has low available memory. Actions are taken based on the `aurora_oom_response` parameter configuration. For more information, see [Troubleshooting out-of-memory issues for Aurora MySQL databases](AuroraMySQLOOM.md). This variable applies to Aurora MySQL version 3.06.0 and higher.  | 
|  `Aurora_pq_bytes_returned`  |  The number of bytes for the tuple data structures transmitted to the head node during parallel queries. Divide by 16,384 to compare against `Aurora_pq_pages_pushed_down`.  | 
|  `Aurora_pq_max_concurrent_requests`  |  The maximum number of parallel query sessions that can run concurrently on this Aurora DB instance. This is a fixed number that depends on the AWS DB instance class.  | 
|  `Aurora_pq_pages_pushed_down`  |  The number of data pages (each with a fixed size of 16 KiB) where parallel query avoided a network transmission to the head node.  | 
|  `Aurora_pq_request_attempted`  |  The number of parallel query sessions requested. This value might represent more than one session per query, depending on SQL constructs such as subqueries and joins.  | 
|  `Aurora_pq_request_executed`  |  The number of parallel query sessions run successfully.  | 
|  `Aurora_pq_request_failed`  |  The number of parallel query sessions that returned an error to the client. In some cases, a request for a parallel query might fail, for example due to a problem in the storage layer. In these cases, the query part that failed is retried using the nonparallel query mechanism. If the retried query also fails, an error is returned to the client and this counter is incremented.  | 
|  `Aurora_pq_request_in_progress`  |  The number of parallel query sessions currently in progress. This number applies to the particular Aurora DB instance that you are connected to, not the entire Aurora DB cluster. To see if a DB instance is close to its concurrency limit, compare this value to `Aurora_pq_max_concurrent_requests`.  | 
|  `Aurora_pq_request_not_chosen`  |  The number of times parallel query wasn't chosen to satisfy a query. This value is the sum of several other more granular counters. An `EXPLAIN` statement can increment this counter even though the query isn't actually performed.  | 
|  `Aurora_pq_request_not_chosen_below_min_rows`  |  The number of times parallel query wasn't chosen due to the number of rows in the table. An `EXPLAIN` statement can increment this counter even though the query isn't actually performed.  | 
|  `Aurora_pq_request_not_chosen_column_bit`  |  The number of parallel query requests that use the nonparallel query processing path because of an unsupported data type in the list of projected columns.  | 
|  `Aurora_pq_request_not_chosen_column_geometry`  |  The number of parallel query requests that use the nonparallel query processing path because the table has columns with the `GEOMETRY` data type. For information about Aurora MySQL versions that remove this limitation, see [Upgrading parallel query clusters to Aurora MySQL version 3](aurora-mysql-parallel-query-optimizing.md#aurora-mysql-parallel-query-upgrade-pqv2).  | 
|  `Aurora_pq_request_not_chosen_column_lob`  |  The number of parallel query requests that use the nonparallel query processing path because the table has columns with a `LOB` data type, or `VARCHAR` columns that are stored externally due to the declared length. For information about Aurora MySQL versions that remove this limitation, see [Upgrading parallel query clusters to Aurora MySQL version 3](aurora-mysql-parallel-query-optimizing.md#aurora-mysql-parallel-query-upgrade-pqv2).  | 
|  `Aurora_pq_request_not_chosen_column_virtual`  |  The number of parallel query requests that use the nonparallel query processing path because the table contains a virtual column.  | 
|  `Aurora_pq_request_not_chosen_custom_charset`  |  The number of parallel query requests that use the nonparallel query processing path because the table has columns with a custom character set.  | 
|  `Aurora_pq_request_not_chosen_fast_ddl`  |  The number of parallel query requests that use the nonparallel query processing path because the table is currently being altered by a fast DDL `ALTER` statement.  | 
|  `Aurora_pq_request_not_chosen_few_pages_outside_buffer_pool`  |  The number of times parallel query wasn't chosen, even though less than 95 percent of the table data was in the buffer pool, because there wasn't enough unbuffered table data to make parallel query worthwhile.  | 
|  `Aurora_pq_request_not_chosen_full_text_index`  |  The number of parallel query requests that use the nonparallel query processing path because the table has full-text indexes.  | 
|  `Aurora_pq_request_not_chosen_high_buffer_pool_pct`  |  The number of times parallel query wasn't chosen because a high percentage of the table data (currently, greater than 95 percent) was already in the buffer pool. In these cases, the optimizer determines that reading the data from the buffer pool is more efficient. An `EXPLAIN` statement can increment this counter even though the query isn't actually performed.  | 
|  `Aurora_pq_request_not_chosen_index_hint`  |  The number of parallel query requests that use the nonparallel query processing path because the query includes an index hint.  | 
|  `Aurora_pq_request_not_chosen_innodb_table_format`  |  The number of parallel query requests that use the nonparallel query processing path because the table uses an unsupported InnoDB row format. Aurora parallel query only applies to the `COMPACT`, `REDUNDANT`, and `DYNAMIC` row formats.  | 
|  `Aurora_pq_request_not_chosen_long_trx`  |  The number of parallel query requests that used the nonparallel query processing path, due to the query being started inside a long-running transaction. An `EXPLAIN` statement can increment this counter even though the query isn't actually performed.  | 
|  `Aurora_pq_request_not_chosen_no_where_clause`  |  The number of parallel query requests that use the nonparallel query processing path because the query doesn't include any `WHERE` clause.  | 
|  `Aurora_pq_request_not_chosen_range_scan`  |  The number of parallel query requests that use the nonparallel query processing path because the query uses a range scan on an index.  | 
|  `Aurora_pq_request_not_chosen_row_length_too_long`  |  The number of parallel query requests that use the nonparallel query processing path because the total combined length of all the columns is too long.  | 
|  `Aurora_pq_request_not_chosen_small_table`  |  The number of times parallel query wasn't chosen due to the overall size of the table, as determined by number of rows and average row length. An `EXPLAIN` statement can increment this counter even though the query isn't actually performed.  | 
|  `Aurora_pq_request_not_chosen_temporary_table`  |  The number of parallel query requests that use the nonparallel query processing path because the query refers to temporary tables that use the unsupported `MyISAM` or `memory` table types.  | 
|  `Aurora_pq_request_not_chosen_tx_isolation`  |  The number of parallel query requests that use the nonparallel query processing path because query uses an unsupported transaction isolation level. On reader DB instances, parallel query only applies to the `REPEATABLE READ` and `READ COMMITTED` isolation levels.  | 
|  `Aurora_pq_request_not_chosen_update_delete_stmts`  |  The number of parallel query requests that use the nonparallel query processing path because the query is part of an `UPDATE` or `DELETE` statement.  | 
|  `Aurora_pq_request_not_chosen_unsupported_access`  |  The number of parallel query requests that use the nonparallel query processing path because the `WHERE` clause doesn't meet the criteria for parallel query. This result can occur if the query doesn't require a data-intensive scan, or if the query is a `DELETE` or `UPDATE` statement.  | 
|  `Aurora_pq_request_not_chosen_unsupported_storage_type`  |  The number of parallel query requests that use the nonparallel query processing path because the Aurora MySQL DB cluster isn't using a supported Aurora cluster storage configuration. For more information, see [Limitations](aurora-mysql-parallel-query.md#aurora-mysql-parallel-query-limitations). This parameter applies to Aurora MySQL version 3.04 and higher.  | 
|  `Aurora_pq_request_throttled`  |  The number of times parallel query wasn't chosen due to the maximum number of concurrent parallel queries already running on a particular Aurora DB instance.  | 
|  `Aurora_repl_bytes_received`  |  Number of bytes replicated to an Aurora MySQL reader database instance since the last restart. For more information, see [Replication with Amazon Aurora MySQL](AuroraMySQL.Replication.md).  | 
|  `Aurora_reserved_mem_exceeded_incidents`  |  The number of times since the last restart that the engine has exceeded reserved memory limits. If `aurora_oom_response` is configured, this threshold defines when out-of-memory (OOM) avoidance activities are triggered. For more information on the Aurora MySQL OOM response, see [Troubleshooting out-of-memory issues for Aurora MySQL databases](AuroraMySQLOOM.md).  | 
|  `aurora_temptable_max_ram_allocation`  |  The maximum amount of memory, in bytes, used at any point by internal temporary tables since the last restart.  | 
|  `aurora_temptable_ram_allocation`  |  The current amount of memory, in bytes, used by internal temporary tables.  | 
|  `Aurora_in_memory_relaylog_status`  |  The current status of in memory relay log feature, the value can be ENABLED or DISABLED.  | 
|  `Aurora_in_memory_relaylog_disabled_reason`  |  Shows the reason of current in memory relay log feature status, if the feature is disabled, display a message of explanation on why the feature is disabled.  | 
|  `Aurora_in_memory_relaylog_fallback_count`  |  Show the total number of fallbacks of in memory relay log feature to persistent relay log mode (legacy). Fallback can be caused by either single event larger than cache size (currently 128MB) or transaction retry exceed the replica transaction retry limit replica\$1transaction\$1retries.  | 
|  `Aurora_in_memory_relaylog_recovery_count`  |  Shows the total number of in memory relay log recovery performed automatically. This count includes the total number of fallbacks and the number of automatic mode switch back to in memory relay log mode after the temporary fallbacks.  | 
|  `Aurora_thread_pool_thread_count`  |  The current number of threads in the Aurora thread pool. For more information on the thread pool in Aurora MySQL, see [Thread pool](AuroraMySQL.Managing.Tuning.concepts.md#AuroraMySQL.Managing.Tuning.concepts.processes.pool).  | 
|  `Aurora_tmz_version`  |  Denotes the current version of the time zone information used by the DB cluster. The values follow the Internet Assigned Numbers Authority (IANA) format: `YYYYsuffix`, for example `2022a` and `2023c`. This parameter applies to Aurora MySQL version 2.12 and higher, and version 3.04 and higher.  | 
|  `Aurora_zdr_oom_threshold`  |  Represents the memory threshold, in kilobytes (KB), for an Aurora DB instance to initiate a zero downtime restart (ZDR) to recover from potential memory-related issues.  | 
|  `server_aurora_das_running`  |  Indicates whether Database Activity Streams (DAS) are enabled or disabled on this DB instance. For more information, see [Monitoring Amazon Aurora with Database Activity Streams](DBActivityStreams.md).  | 

## MySQL status variables that don't apply to Aurora MySQL
<a name="AuroraMySQL.Reference.StatusVars.Inapplicable"></a><a name="status_vars"></a>

 Because of architectural differences between Aurora MySQL and MySQL, some MySQL status variables don't apply to Aurora MySQL.

 The following MySQL status variables don't apply to Aurora MySQL. This list isn't exhaustive.
+  `innodb_buffer_pool_bytes_dirty` 
+  `innodb_buffer_pool_pages_dirty` 
+  `innodb_buffer_pool_pages_flushed` 

Aurora MySQL version 3 removes the following status variables that were in Aurora MySQL version 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` 

These MySQL status variables are available in Aurora MySQL version 2, but they aren't available in Aurora MySQL version 3:
+  `Innodb_redo_log_enabled` 
+  `Innodb_undo_tablespaces_total` 
+  `Innodb_undo_tablespaces_implicit` 
+  `Innodb_undo_tablespaces_explicit` 
+  `Innodb_undo_tablespaces_active` 