一、liunx操作系统层面
1、整体cpu负载的%user最好不长期超过20%(若%user太高,有极大可能性是索引使用不当)
2、整体cpu负载的%iowat最好不长期超过10%(确认I/O子系统是否有明显瓶颈)
3、整体cpu负载的%idle最好保持在70%以上(让CPU保持低负载)
4、关注各个逻辑CPU之间的负载是否均衡(可能是中断不均衡导致性能问题)
5、关注是否有swap产生(注意关闭NUMA)
可使用命令或工具:vmstat、sar、dstat等
二、MySQL状态层面
1、主要关注tps、qps、并发连接数(Threads_connected)、并发活跃线程数(Threads_running)、临时表(*tmp_disk_tables*)、锁(*locks_waited*, Innodb_row_lock*)等指标。
2、关注当前是否有不良线程状态,例如:copy*to*tmp table、Creating sort index、Sorting result、Creating tmp table、长时间的Sending data等。
3、关注InnoDB buffer pool page的使用情况,主要是Innodb*pages_free、Innodb*wait_free两个。
4、关注InnoDB的redo log刷新延迟,尤其是checkpoint延迟情况,并关注unpurge list大小。
5、关注innodb status中是否有long semaphore wait的情况出现。
6、关注slow query sql的增长情况。