zabbix监控mysql图表释义(三)
二十六 MySQL Binary/Relay logs
MySQL二进制/中继日志图显示了服务器二进制和中继日志使用的空间信息。
二十七 MySQL Command Counters
MySQL命令计数器图显示了各种MySQL命令的计数器。这些是从SHOW STATUS中的Com_计数器派生出来的。如果图中有更改,则表示应用程序中发生了更改。
二十八 MySQL Connections
MySQL连接图显示了MySQL内部的连接参数和计数器信息:
connections permitted, connections used, connections aborted, clients aborted, current connections, and connections created。最有趣的可能是中止的客户端和连接,这可能表示出现故障的应用程序不正常地断开连接、空闲连接超时、网络问题、错误的身份验证尝试,或类似的情况
- Connections :尝试连接数据库的连接次数
- Max_used_connections :自服务器启动以来同时使用的最大连接数
- Threads_connected :当前打开的连接数
- Threads_created:为处理连接而创建的线程数。如果Threads_created很大,您可能希望增加thread_cache_size值。线程缓存丢失率可以计算为Threads_created/Connections。
- Threads_running:并发活跃连接数
二十九 MySQL Files and Tables
显示了MySQL的表缓存和文件句柄的状态,the size of the cache, and how many open files and tables there are,
这张图不太可能包含正常事件过程中的许多信息。
· Open_tables:打开的表的数量。
· Opened_files:使用my_open() (mysys库函数)打开的文件数量。不使用此函数打开文件的服务器部分不会增加该计数。
· Opened_table_definitions:已缓存的.frm文件的数量。
· Opened_tables:已打开的表的数量。如果Opened_tables很大,那么table_open_cache的值可能太小了。
三十 MySQL Handlers
MySQL Handlers 图表显示了各种处理程序计数器,这些计数器记录了MySQL通过存储引擎API完成了多少操作。索引方面的变化可能会在这里清楚地显示出来:例如,一个曾经执行表扫描但现在有一个好的索引可供使用的查询将导致使用不同的处理程序调用。如果您看到突然的变化,它可能与模式变化或不同的查询混合有关。如果您看到Handler_read_rnd_next出现一个大的峰值,这可能意味着执行了大量的表扫描。
· Handler_commit :内部提交语句的数量。
· Handler_delete :从表中删除行的次数。
· Handler_mrr_init :服务器使用存储引擎自己的多范围读取实现进行表访问的次数。
· Handler_prepare :用于两阶段提交操作的准备阶段的计数器。
· Handler_read_first :读取索引中前导列的次数。如果该值很高,则表明服务器正在执行大量的全索引扫描 (for example, SELECT col1 FROM foo, assuming that col1 is indexed).
· Handler_read_key :使用索引读取行数据的请求数。如果这个值比较高,这就很好地说明您的表已经为您的查询正确地建立了索引。
· Handler_read_last :The number of requests to read the last key in an index. With ORDER BY, the server will issue a first-key request followed by several next-key requests, whereas with ORDER BY DESC, the server will issue a last-key request followed by several previous-key requests.
· Handler_read_next :按索引顺序读取下一行的请求数。如果查询具有范围约束的索引列或执行索引扫描,则此值将递增。
· Handler_read_prev :The number of requests to read the previous row in key order. This read method is mainly used to optimize ORDER BY ... DESC.
· Handler_read_rnd :The number of requests to read a row based on a fixed position. This value is high if you are doing a lot of queries that require sorting of the result. You probably have a lot of queries that require MySQL to scan entire tables or you have joins that do not use keys properly.
· Handler_read_rnd_next :The number of requests to read the next row in the data file. This value is high if you are doing a lot of table scans. Generally this suggests that your tables are not properly indexed or that your queries are not written to take advantage of the indexes you have.
· Handler_write:在表中插入一行的请求数。
三十一 MySQL Network Traffic
MySQL网络流量图以字节为单位显示进出MySQL服务器的网络流量。
三十二 MySQL Processlist
The MySQL Processlist shows the number (count) of queries from SHOW PROCESSLIST in given statuses. Some of the statuses are lumped together into the “other” category. This is a“scoreboard” type of graph. In most cases, you should see mostly Other, or a few of the statuses like “Sending data”. Queries in Locked status are the hallmark of a lot of MyISAM table locking. Any mixture of statuses is possible, and you should investigate sudden and systemic chang
三十三 MySQL Query Cache
The MySQL Query Cache graph shows information about the query cache inside MySQL: the number of queries in the cache, inserted, queries not cached, queries pruned due to low memory, and cache hits.
三十四 MySQL Query Cache Memory
The MySQL Query Cache Memory graph shows information on the query cache’s memory usage: total size, free
memory, total blocks and free blocks. Blocks are not of a uniform size, despite the name.
三十五 MySQL Replication Status
MySQL复制状态图显示复制线程的状态。有两种方法可以测量复制延迟:
?通过查看显示从属状态的Seconds_behind_master列,它显示为主列后面的Secs
?通过查看诸如Percona Toolkit中pt-heartbeat工具支持的心跳表。为此,必须配置ss_get_mysql_stats.php文件。
当复制正在运行时,有一个与复制延迟大小相同的区域,颜色为绿色。当它停止时,有一个与复制延迟大小相同的区域,颜色为红色。这意味着您将看到一个复制延迟图,用适当的颜色(绿色或红色)表示复制是否在此时停止。如果复制没有延迟,您将看不到任何绿色或红色。如果您使用的是Seconds_behind_master而不是pt-heartbeat来测量延迟,则不可能在从服务器停止时测量延迟,因此您不会看到任何红色。这就是为什么显示从属状态的Seconds_behind_master不如pt-heartbeat有用的原因之一。该图还显示了打开的临时表和重试的事务。
三十六 MySQL Select Types
MySQL Select Types图表显示了MySQL服务器执行了多少种类型的Select:full join, full range join, range, range check, and scan。与处理程序图一样,这些图显示了不同类型的执行计划,应当关注突变情况。应该努力使Select_full_join查询为零!
· Select_full_join :执行表扫描的join数,因为它们不使用索引。如果这个值不是0,那么应该仔细检查表的索引。
· Select_full_range_join :The number of joins that used a range search on a reference table
· Select_range :在第一个表上使用返回查找的join数。即使值非常大,这通常也不是一个关键问题。
· Select_range_check :The number of joins without keys that check for key usage after each row. If this is not 0, you should carefully check the indexes of your tables.
· Select_scan :对第一个表进行全表扫描的join数。
三十七 MySQL Sorts
MySQL sort图表显示了关于MySQL排序操作的信息:行排序、合并传递以及由范围和扫描查询触发的排序数量。很容易过度分析这些数据。作为一种确定是否需要更改服务器配置的方法,它是无用的。
Sort_merge_passes :排序算法必须完成的合并遍历数。如果这个值很大,那么应该考虑增加sort_buffer_size系统变量的值。
Sort_range:The number of sorts that were done using ranges.
Sort_rows :发生排序的行数。
Sort_scan:扫描表所完成的排序数。The number of sorts that were done by scanning the table
三十八 MySQL Table Locks
MySQL表锁图表显示了关于MySQL内部表级锁操作的信息: locks waited, locks granted without waiting, and slow queries。必须等待的锁通常是由MyISAM表引起的。即使是InnoDB表也会导致获取锁,但它们通常会立即释放,不会发生等待。
状态参数:
Table_locks_immediate :立刻获得表锁的请求次数 Table_locks_waited :需要等待表锁的请求数。如果这个值很高,并且有性能问题,那么应该首先优化查询,然后拆分表。
三十九 MySQL Temporary Objects
显示了关于MySQL服务器创建的临时对象的信息: temporary tables, temporary files, and temporary tables created on disk instead of in memory。就像对数据排序一样,这很容易被过度分析。最严重的是在磁盘上创建的临时表。处理这些很复杂,但在《高性能MySQL》一书中有详细介绍。
四十 MySQL Threads
MySQL线程图显示了服务器配置的线程缓存的大小和每种类型的线程数。在这个例子中,我们可以观察到一旦thread_cache_size被设置为10,MySQL就停止创建新线程并开始使用缓存的线程。
配置参数:thread_cache_size :服务器应该缓存多少线程以供重用。当客户端断开连接时,如果缓存的线程数少于thread_cache_size,客户端线程就会被放入缓存中。如果可能,通过重用缓存中的线程来满足对线程的请求,并且只有在缓存为空时才创建新线程。如果您有很多新连接,可以增加这个变量来提高性能。通常,如果您有一个良好的线程实现,这不会提供显著的性能改进。但是,如果服务器每秒看到数百个连接,通常应该将thread_cache_size设置得足够高,以便大多数新连接使用缓存的线程。
状态参数:
- Threads_cached :线程缓存中的线程数。这个变量在嵌入式服务器(libmysqld)中没有意义,从MySQL 5.7.2开始,它在嵌入式服务器中不再可见。
- Threads_connected :当前打开的连接数
- Threads_created :为处理连接而创建的线程数。如果Threads_created很大,您可能希望增thread_cache_size值。缓存丢失率可以计算为Threads_created/Connections。
- Threads_running :活跃的线程数
四十一 MySQL Transaction Handler
MySQL事务处理程序图显示了在MySQL服务器级别发生的事务操作
· Handler_rollback:用于存储引擎执行回滚操作的请求数。
· Handler_savepoint:存储引擎放置保存点的请求数。
· Handler_savepoint_rollback:将存储引擎回滚到保存点的请求数量。
· Handler_update:更新表中某一行的请求数。