ORACLE 数据库AWR和ADDM报告收集与SQL调优
写在前面
好久不见,许久没有更新了,账号密码也是刚找回来,手机都换了,感觉物是人非。我依然是当年的ERP小开发一枚,不过时间是我不仅仅局限于java及报表中的设计开发,个人的兴趣爱好也越来越偏向于数据库,所以这次打算给大家分享一下在项目中遇到过的ORACLE数据库报告收集及调优的内容,共勉进步。
ORACLE启动配置文件说明
Oracle中的参数文件是一个包含一系列参数以及参数对应值的操作系统文件。它们是在数据库实例启动时候加载的,决定了数据库的物理 结构、内存、数据库的限制及系统大量的默认值、数据库的各种物理属性、指定数据库控制文件名和路径等信息,是进行数据库设计和性能调优的重要文件。可以分为两种类型ORACLE启动配置文件说明
PFile
初始化参数文件(Initialization Parameters Files),Oracle 9i之前,ORACLE一直采用pfile方式存储初始化参数,pfile 默认的名称为“init+例程名.ora”文件路径:/data/app/oracle/product/12.1.0/dbhome_1/dbs,这是一个文本文件,可以用任何文本编辑工具打开
SPFile
服务器参数文件(Server Parameter Files),从Oracle 9i开始,Oracle引入了spfile文件,spfile 默认的名称为“spfile+例程名.ora”文件路径:/data/app/oracle/product/12.1.0/dbhome_1/dbs 以二进制文本形式存在,不能用vi编辑器对其中参数进行修改,只能通过SQL命令在线修改。
系统配置修改
数据库在安装过程中会设置许多默认参数,这些参数往往无法发挥服务器最大的性能,从而限制了数据库的性能上限以及处理速度。一般我们在项目中用到的常用系统参数如下:
- 实例名称 ,所有的配置修改都要执行具体实例名,尤其是多实例系统;
- sga_target:SGA_TARGET是oracle10g中用于实现自动SGA内存管理而新增加的;
- sga_max_size:SGA_MAX_SIZE指的是可动态分配的最大值﹐而SGA_TARGET是当前已分配的最大sga,两者相辅相成,正常情况SGA_MAX_SIZE=SGA_TARGET;
- pga_aggregate_target:此参数用来指定所有session总计可以使用最大PGA内存;
- dml_locks:设置系统中允许DML锁的数量;
- open_cursors:指定一个会话一次最多可以拥有的游标数。缺