MySQL server performance metrics
Track and measure the critical performance metrics of your MySQL server, such as attempted connections, aborted connects, buffer pool utilization, threads running, and slow queries count, from a customized and unified console using the Site24x7 MySQL server monitoring agent.
To ensure the health and performance of your MySQL server, you can define thresholds for each of these metrics, set alerts, and receive notifications whenever one of these thresholds is breached.
Metrics | Description | Unit |
---|---|---|
Summary | ||
Uptime | The total time the MySQL server has been in the Up state | Secs/Min/Hrs/Days |
Version | The version of the MySQL server | Text |
InnoDB Buffer Pool Size | The size of the buffer pool, the memory area where InnoDB caches table and index data | Bytes/KB/MB/GB/TB |
Type (Instance Type) | The type of the MySQL instance (master, slave, or standalone) | Text |
Connections Attempted | The number of connection attempts to the MySQL server | Count |
Connections Attempted | The number of connection attempts to the MySQL server | Count |
Aborted Connects | The number of failed attempts to connect to the MySQL server | Count |
Table Open Cache Hit Ratio | The percentage of table open cache hits that has happened | Percentage |
Bytes Sent | The number of bytes sent to all clients | Bytes/KB/MB/GB/TB |
Bytes Received | The number of bytes received from all clients | Bytes/KB/MB/GB/TB |
Questions | The number of statements executed by the server. This includes only statements sent to the server by clients and not statements executed within stored programs. This variable does not count COM_PING, COM_STATISTICS, COM_STMT_PREPARE, COM_STMT_CLOSE, or COM_STMT_RESET commands | Count |
InnoDB Buffer Pool Reads | The number of logical reads that InnoDB could not satisfy from the buffer pool, and had to read directly from the disk | Bytes/KB/MB/GB/TB |
InnoDB Buffer Pool Read Requests | The number of logical read requests | Count |
Buffer Pool Utilization | The size of the buffer pool, the memory area where InnoDB caches the table and index data | Percentage |
Threads Connected | The number of currently open MySQL connections | Count |
Threads Running | The number of MySQL threads that are not sleeping | Count |
Threads Cached | The number of MySQL threads in the thread cache | Count |
Threads Created | The number of MySQL threads created to handle connections | Count |
Commands and handlers | ||
Update Command | The number of times the UPDATE statement has been executed between the poll intervals | Count |
Insert Command | The number of times the INSERT statement has been executed between the poll intervals | Count |
Insert Select Command | The number of times the INSERT SELECT statement has been executed between the poll intervals | Count |
Delete Command | The number of times the DELETE statement has been executed between the poll intervals | Count |
Create DB Command | The number of times the CREATE DB statement has been executed between the poll intervals | Count |
Drop DB Command | The number of times the DROP DB statement has been executed between the poll intervals | Count |
Drop Table Command | The number of times the DROP TABLE statement has been executed between the poll intervals | Count |
Alter Table Command | The number of times the ALTER TABLE statement has been executed between the poll intervals | Count |
Binlog Command | The number of times the BINLOG statement has been executed between the poll intervals | Count |
Load Command | The number of times the LOAD statement has been executed between the poll intervals | Count |
Replace Command | The number of times the REPLACE statement has been executed between the poll intervals | Count |
Replace Select Command | The number of times the REPLACE SELECT statement has been executed between the poll intervals | Count |
Select Command | The number of times the SELECT statement has been executed between the poll intervals | Count |
Shutdown Command | The number of times the SHUTDOWN statement has been executed between the poll intervals | Count |
Group Replication Start Command | The number of times the GROUP REPLICATION START statement has been executed between the poll intervals | Count |
Group Replication Stop Command | The number of times the GROUP REPLICATION STOP statement has been executed between the poll intervals | Count |
Slave Start Command | The number of times the SLAVE START statement has been executed between the poll intervals | Count |
Slave Stop Command | The number of times the SLAVE STOP statement has been executed between the poll intervals | Count |
Change Master Command | The number of times the CHANGE MASTER statement has been executed between the poll intervals | Count |
Revoke Command | The number of times the REVOKE statement has been executed between the poll intervals | Count |
Revoke All Command | The number of times the REVOKE ALL statement has been executed between the poll intervals | Count |
Rollback Command | The number of times the ROLLBACK statement has been executed between the poll intervals | Count |
Rollback to Savepoint Command | The number of times the ROLLBACK TO SAVEPOINT statement has been executed between the poll intervals | Count |
Savepoint Command | The number of times the SAVEPOINT statement has been executed between the poll intervals | Count |
Handler Delete | The number of times that rows have been deleted from tables | Count |
Handler External Lock | The server increases this variable for each call to its external_lock() function, which generally occurs at the beginning and end of access to a table instance. There might be differences among storage engines. | Count |
Handler Update | The number of requests to update a row in a table | Count |
Handler Write | The number of requests to insert a row in a table | Count |
Handler Read First | The number of times the first entry in an index was read. If this value is high, it suggests that the server is doing a lot of full index scans. | Count |
Handler Read Key | The number of requests to read a row based on a key. If this value is high, it is a good indication that the tables are properly indexed for the queries. | Count |
Handler Read Last | The number of requests to read the last key in an index | Count |
Handler Read Next | The number of requests to read the next row in key order | Count |
Handler Read Prev | The number of requests to read the previous row in key order | Count |
Handler Commit | The number of internal COMMIT statements | Count |
Handler Rollback | The number of requests for a storage engine to perform a rollback operation | Count |
Handler Savepoint | The number of requests for a storage engine to place a Savepoint | Count |
Handler Savepoint Rollback | The number of requests for a storage engine to roll back to a Savepoint | Count |
Binlog | ||
Binlog Cache Use | The number of transactions that used the binary log cache | Count |
Binlog Stmt Cache Use | The number of non-transactional statements that used the binary log statement cache | Count |
Binlog Cache Disk Use | The number of transactions that used the temporary binary log cache but exceeded the value of binlog_cache_size and used a temporary file to store statements from the transaction | Count |
Binlog Stmt Cache Disk Use | The number of non-transactional statements that used the binary log statement cache but exceeded the value of binlog_stmt_cache_size and used a temporary file to store those statements | Count |
Binlog Size | The total combined size of all the existing binary log files | Bytes/KB/MB/GB/TB |
Binlog File Count | The total combined count of the binary log files | Count |
Relay Log Size | The total combined size of all the existing relay log files | Bytes/KB/MB/GB/TB |
Relay Log File Count | The total combined count of the relay log files | Count |
InnoDB | ||
InnoDB Row Reads | The number of rows read from the InnoDB tables | Count |
InnoDB Rows Updated | The number of rows updated in the InnoDB tables | Count |
InnoDB Rows Inserted | The number of rows inserted into the InnoDB tables | Count |
InnoDB Rows Deleted | The number of rows deleted from the InnoDB tables | Count |
InnoDB Rows Created | The number of rows created by operations in the InnoDB tables | Count |
InnoDB Pages Read | The number of pages read from the InnoDB buffer pool by operations in the InnoDB tables | Count |
InnoDB Pages Written | The number of pages written by operations in the InnoDB tables | Count |
InnoDB Row Lock Waits | The number of times the operations in the InnoDB tables had to wait for a row lock | Count |
InnoDB Data Read | The amount of data read since the server was started | Bytes/KB/MB/GB/TB |
InnoDB Data Writes | The total number of data writes | Count |
InnoDB Data Reads | The total number of data reads (OS file reads) | Count |
InnoDB Data Written | The amount of data written so far | Bytes/KB/MB/GB/TB |
InnoDB Data Fsyncs | The number of fsync() operations so far. The frequency of fsync() calls is influenced by the setting of the innodb_flush_method configuration option. | Count |
InnoDB OS Log Fsyncs | The number of fsync() writes done to the InnoDB redo log files | Count |
InnoDB Log I/O | The number of physical writes to the InnoDB redo log files | Count |
InnoDB S Lock OS Waits | The number of InnoDB S lock OS waits as shown in the SEMAPHORES section of the SHOW ENGINE INNODB STATUS output | Count |
InnoDB X Lock OS Waits | The number of InnoDB X lock OS waits as shown in the SEMAPHORES section of the SHOW ENGINE INNODB STATUS output | Count |
InnoDB S Lock Spin Rounds | The number of InnoDB S lock spin rounds as shown in the SEMAPHORES section of the SHOW ENGINE INNODB STATUS output | Count |
InnoDB X Lock Spin Rounds | The number of InnoDB X lock spin rounds as shown in the SEMAPHORES section of the SHOW ENGINE INNODB STATUS output | Count |
InnoDB Mutex Spin Rounds | The number of InnoDB Mutex spin rounds as shown in the SEMAPHORES section of the SHOW ENGINE INNODB STATUS output | Count |
InnoDB Buffer Pool Bytes Data | The total number of bytes in the InnoDB buffer pool containing data. The number includes both dirty and clean pages. | Count |
InnoDB Buffer Pool Bytes Dirty | The total current number of bytes held in dirty pages in the InnoDB buffer pool | Bytes/KB/MB/GB/TB |
InnoDB Buffer Pool Read Requests | The number of logical read requests | Bytes/KB/MB/GB/TB |
InnoDB Buffer Pool Write Requests | The number of write requests done to the InnoDB buffer pool | Count |
InnoDB Buffer Pool Pages Data | The number of pages in the InnoDB buffer pool containing data. The number includes both dirty and clean pages. | Count |
InnoDB Buffer Pool Pages Dirty | The current number of dirty pages in the InnoDB buffer pool | Count |
InnoDB Buffer Pool Pages Flushed | The number of requests to the flushed pages from the InnoDB buffer pool | Count |
InnoDB Buffer Pool Pages Total | The total size of the InnoDB buffer pool. When using compressed tables, the reported Innodb_buffer_pool_pages_data value may be larger than Innodb_buffer_pool_pages_total. | Count |
InnoDB Page Size | The size of the InnoDB page which is, by default, 16 Kb. Many values are counted in pages because the page size enables them to be easily converted to bytes. | Count |
InnoDB Active Transactions | The number of active transactions | Bytes/KB/MB/GB/TB |
InnoDB Locked Transactions | The number of locked transactions | Count |
InnoDB Current Transactions | The number of current transactions | Count |
InnoDB History List Length | The history list length as shown in the TRANSACTIONS section of the SHOW ENGINE INNODB STATUS output | Count |
InnoDB Lock Structs | The total number of lock structs | Count |
InnoDB Tables in Use | The total number of InnoDB tables currently in use | Count |
InnoDB Locked Tables | The total number of InnoDB locked tables | Count |
InnoDB OS File Reads | The total number of file reads performed by the read threads within InnoDB | Count |
InnoDB OS File Writes | The total number of file writes performed by the write threads within InnoDB | Count |
InnoDB Queries Inside | The total number of InnoDB inside queries as shown in the FILE I/O section of the SHOW ENGINE INNODB STATUS output | Count |
InnoDB Queries Queued | The total number of InnoDB queries queued | Count |
MyISAM | ||
Key Blocks Used | The number of used blocks in the MyISAM key cache. This value is a high-water mark that indicates the maximum number of blocks that have ever been in use at one time. | Count |
Key Read Requests | The number of requests to read a key block from the MyISAM key cache | Count |
Key Write Requests | The number of requests to write a key block to the MyISAM key cache | Count |
Key Reads | The number of physical reads of a key block from the disk into the MyISAM key cache. If Key_reads is large, then your key_buffer_size value is probably too small. The cache miss rate can be calculated as Key_reads / Key_read_requests. | Count |
Key Writes | The number of physical writes of a key block from the MyISAM key cache to the disk | Count |
Key Buffer Bytes Used | The amount of bytes used in the MyISAM key cache. [Key_blocks_used * key_cache_block_size] | Count |
Key Buffer Bytes Unflushed | The number of key bytes in the MyISAM key cache that have changed but have not yet been flushed to the disk. [Key_blocks_not_flushed * key_cache_block_size] | Bytes/KB/MB/GB/TB |
Queries and tables | ||
Queries | The number of statements executed by the server. This variable includes the statements executed within the stored programs, unlike the Questions variable. It does not count the COM_PING or COM_STATISTICS commands. | Count |
Slow Queries | The number of queries that have taken more time than the long_query_time. This counter increases regardless of whether the slow query log is enabled. | Count |
Select Full Join | The number of joins that perform table scans because they do not use indexes. If this value is not 0, the indexes of your tables need to be checked. | Count |
Select Scan | The number of joins that did a full scan of the first table | Count |
Sort Merge Passes | The number of merge passes that the sort algorithm has had to do. If this value is large, consider increasing the value of the sort_buffer_size system variable. | Count |
Sort Range | The number of sorts that were done using ranges | Count |
Sort Rows | The number of sorted rows | Count |
Sort Scan | The number of sorts that were done by scanning the table | Count |
Table Open Cache Hits | The number of hits for open table cache lookups | Count |
Tale Open Cache Misses | The number of misses for open table cache lookups | Count |
Table Open Cache Overflows | The number of overflows for the open table cache. This represents the number of times a table is opened or closed, a cache instance has an unused entry, and the size of the instance is larger than table_open_cache / table_open_cache_instances. | Count |
Open Files | The number of files that are open. This count includes regular files opened by the server. It does not include other types of files such as sockets or pipes. Also, the count does not include files that storage engines open using their own internal functions rather than asking the server level to do so. | Count |
Open Tables | The number of tables that are open | Count |
Open Table Definitions | The number of table definitions that have been cached | Count |
Open Streams | The number of streams that are open (used mainly for logging) | Count |