怎么查看数据库占用cpu和内存比较大的原因
有一台数据库,24核,32G内存,内存 mysql进程使用到 22%多,cpu使用到200%多
,怎么查看数据库占用cpu和内存比较大的原因
排查方案:
1.show full processlist 可以查看目前有那些耗时的进程
2.用pt-query-digest 去分析下慢查询日志,处理了一些sql语句
3.分析下这些语句,想想是不是有可能是外部业务导致的,比如爬虫爬取页面导致,或者任务计划卡死,这些SQL要统计出来,然后拿给研发看。
4.mysql5.7的话performance_schema下面有memory相关的表,可以看下内存的情况
5.看看innodb_buffer_pool_size 和 innodb_buffer_pool_instances 这两个参数的值
解决方案:
处理了一些慢sql语句后cpu已经下到 100% 多点 ,内存还在22%左右