记一次database cpu high的处理

基本上,我们的数据库实例每次cpu飙升都是因read而起,很少有write导致的cpu高。这说明read,随机读,排序,都会占用cpu。而写入主要是io行为,尤其是顺序写,不需要占cpu。

今次问题,rds在三个小时内都很高,始终维持50+,最高甚至到98 。当然我们的业务可用性并不依赖rds。

观察一段时间,并没有很明显的大的慢查询。但是会有一些小查询时有时无,其实这些能被肉眼看到的就可能是问题的所在。

最终定位为一个复合primary key的第二个字段单独查询太多,造成全表扫描。单独添加索引后fix。

不算太慢,查询数据量不算太多,但是十分频繁,查询量非常大,往往这类小sql会很隐蔽地把cpu搞上去。

时间: 2024-10-11 21:28:59

记一次database cpu high的处理的相关文章

记一次MongoDB CPU飙升至99%问题的解决

公司业务调整,把一部分数据由Redis转至MongoDB,业务在测试环境正常,生产环境上线后发现压力一上来MongoDB的服务直接把CPU占满了,和开发的同学分析了一下也参考了一下百度上类似的问题,最后定位原因:未使用索引. 解决方法很简单:对应的关键字段创建索引即可. 参考命令如下: >use Data;                                            #进入数据库Data,注意区分大小写: >db.stats();                   

所有表和动态视图列表(dict)

TABLE_NAME    COMMENTSDBA_CONS_COLUMNS    Information about accessible columns in constraint definitionsDBA_LOG_GROUP_COLUMNS    Information about columns in log group definitionsDBA_LOBS    Description of LOBs contained in all tablesDBA_CATALOG    A

20145314郑凯杰《信息安全系统设计基础》第7周学习总结 part A

# 20145314郑凯杰<信息安全系统设计基础>第7周学习总结 part A ##教材学习内容总结 # 6.1 存储技术  # 存储器系统,包括存储设备以及它们的组织结构. 存储设备包括:cache,内存,硬盘,磁带.... 组织结构:层次结构. 以CPU为记,越靠近CPU的存储,越快速,越小,成本越高. ---------- - 6.1.1 随机访问存储器(内存) 分两种SRAM和DRAM.即静态的和动态的. - i)静态RAM 每个数据位存储于一个"双稳态的存储单元"

【软件安全】汇编语言超浓缩教程&缓冲区溢出攻击——1

对初学者而言,汇编的许多命令太复杂,往往学习很长时间也写不出一个漂漂亮亮的程序,妨碍我们学习汇编的兴趣,不少人就此放弃.我个人的看法是学汇编,不一定要写程序,写程序确实不是汇编的强项,大家不妨玩玩DEBUG,有时CRACK出一个小软件比完成一个程序更有成就感 " 哎哟,哥们儿,还捣鼓汇编呢?那东西没用,兄弟用VB"钓"一个API就够你忙活个十天半月的,还不一定搞出来."此君之言倒也不虚,那吾等还有无必要研他一究呢?(废话,当然有啦!要不然你写这篇文章干嘛.)别急,别

ODBC连接数据库总结

注:本文内容主要摘自<数据库教程>电子工业出版社,施伯乐等编著.sinble总结 句柄是应用程序和数据源连接的工具.根据应用程序的请求,驱动程序管理器就各驱动程序为存储有关ODBC环境.每个连接和每个SQL语句的信息分配一块存储空间,而把代表这些存储空间的句柄返回给应用程序,应用程序在调用ODBC函数时就要用到这些句柄. ODBC使用三个句柄:环境句柄,连接句柄,语句句柄. 其中,一个环境句柄可与多个连接句柄相连,一个连接句柄可与多个语句句柄相连.(我的话:利用已经分配好的环境句柄可以创建与其

Migrating Oracle on UNIX to SQL Server on Windows

Appendices Published: April 27, 2005 On This Page Appendix A: SQL Server for Oracle Professionals Appendix B: Getting the Best Out of SQL Server 2000 and Windows Appendix C: Baselining Appendix D: Installing Common Drivers and Applications Installing

ocp 1Z0-042 121-178题解析

121. You want to create a new optimized database for your transactional production environment to be used by a financial application. While creating the database, you want the Oracle software to take care of all basic settings to optimize the databas

【转】Oracle Database PSU/CPU

转自: http://www.cnblogs.com/ebs-blog/archive/2011/07/28/2167232.html 1. 什么是PSU/CPU?CPU: Critical Patch UpdateOracle对于其产品每个季度发行一次的安全补丁包,通常是为了修复产品中的安全隐患. PSU: Patch Set UpdatesOracle对于其产品每个季度发行一次的补丁包,包含了bug的修复.Oracle选取被用户下载数量多的,并且被验证过具有较低风险的补丁放入到每个季度的PS

Oracle Database PSU/CPU

1. 什么是PSU/CPU?CPU: Critical Patch UpdateOracle对于其产品每个季度发行一次的安全补丁包,通常是为了修复产品中的安全隐患. PSU: Patch Set UpdatesOracle对于其产品每个季度发行一次的补丁包,包含了bug的修复.Oracle选取被用户下载数量多的,并且被验证过具有较低风险的补丁放入到每个季度的PSU中.在每个PSU中不但包含Bug的修复而且还包含了最新的CPU. 2. 如何查找最新的PSU?每个数据库版本都有自己的PSU,PSU版