1、查询缓存:
mysql> show variables like '%query_cache%';
2、缓存在Cache中线程数量thread_cache_size:
mysql> show variables like 'thread%';
3、DB已连接的线程数:
mysql> show status like 'connections';
4、当前连接线程状态:
mysql> show status like '%thread%';
5、索引缓存大小:
mysql> show variables like 'key_buffer_size';
6、索引缓存未命中率:
mysql> show global status like 'key_read%';
7、索引缓存命中率:
mysql> show global status like 'key_%';
8、索引读取统计:
mysql> show global status like 'key_blocks_u';
key_blocks_unused表示未使用的缓存簇(blocks)数,key_blocks_used表示曾经用到的最大的blocks,如果缓存都用到了,要么增加key_buffer_size,要么过度索引,把缓存占满了。
9、并发最大连接数-允许最大连接数(一般500到800比较合适):
mysql> show variables like 'max_connections';
10、并发最大连接数-服务器响应最大连接数:
mysql> show global status like 'max_used_connections';
11、并发最大连接数-当前连接数:
mysql> show global status like 'connections';
12、并发最大连接数-线程队列(值越小越好):
mysql> show variables like 'back_log';
13、临时表:
mysql> show global status like 'created_tmp%';
临时表比较大无法在内存完成时就不得使用磁盘文件,如果'created_tmp_tables非常大,则可能是系统中的排序操作过多,或者是表连接方式优化不够。
14、mysql服务器对临时表的配置:
mysql> show variables where variable_name in ('temp_able_siae','max_heap_table_size');
当临时表空间小于max_heap_table_size时,才能全部放入内存。
15、表扫描情况:
mysql> show global status like 'handler_read%';
mysql> show global status like 'com_select';
如果表扫描率超过4000,说明进行太多表扫描,可能索引没有建好,增加read_buffer_size值会有好处,但不要查8M。