oracle参数open_cursors和session_cached_cursor详解
oracle参数open_cursors和session_cached_cursor详解 SQL> show parameter open_cursors --每个session(会话)最多能同时打开多少个cursor(游标) NAME ...
set autotrace的用法和含意
set autotrace的用法和含意--用法1:查看执行计划、统计信息并且返回sql结果集set autotrace on; --方法2:不生成AUTOTRACE 报告,这是缺省模式SET AUTOTRACE OFF--方法3:查看执行计划、统计信息不返回sql结果集:set autotrace traceonly; --方法4:只看执行计划不返回sql结果集:set autotrace traceon...
【优化】查看历史的执行计划之查看AWR报告
AWR(AutomaticWorkload Repository)报告是我们进行日常数据库性能评定、问题SQL发现的重要手段。熟练掌握AWR报告,是做好开发、运维DBA工作的重要基本功。 AWR报告的原理是基于Oracle数据库的定时镜像功能。默认情况下,Oracle数据库后台进程会以一定间隔(一小时)收集系统当前状态镜像,并且保存...
【优化】explain plan for 方式存取执行计划
如果要分析某条SQL的性能问题,通常我们要先看SQL的执行计划,看看SQL的每一步执行是否存在问题。 如果一条SQL平时执行的好好的,却有一天突然性能很差,如果排除了系统资源和阻塞的原因,那么基本可以断定是执行计划出了问题。explain plan for 方式存取sql的执行计划查看的只是最近的Plan table中的信息 ...
【优化】SPM(下)手工捕获sql执行计划并查看演进情况
手工捕获sql执行计划并查看演进情况前期准备:Sys下执行操作删除baseline里以有的执行计划(根据需要多次执行)declare &...
【优化】SPM(上)自动捕获sql执行计划并演进
Spm的作用及应用场合: Spm的主要作用:通过管理sql执行计划,2、应用场合:数据库升级;不间断的系统数据改变;业务系统新模块的开发。中信息:SYS@ORA11GR2>select sql_id,sql_text from v$sql where sql_text like'select * from employees_bak where last_name=%';...
【性能优化】SPA管理
主要测试由于系统环境变更包括操作系统变更,数据库升级等对 SPA管理——导入tunning set并解包:先利用SecureFX传输dump文件到/home/oracle下[oracle@wang ~]$ lsappsandstage.dmp BCT[oracle@wang ~]$ pwd/home/oracle ——创建目录对象并授权SYS@ORA11G...
【性能优化】降低高水位
对于一些删除操作如delete,虽然数据删除了,但是并没有提高性能,原因就是数据删除了,但数据原先占的block的位置置空却不许别的数据使用,存在碎片,高水位线没有降下来。这样对于dml、ddl操作仍然是从HWM线以下收缩,性能并没有提升。解决办法:1.truncatetable或drop table &nb...
【性能优化】手工分配区
手工分配区 那么可以尝试手动一次性增加足够大的区, 1) 创建测试表空间及表SYS@ORA11GR2>create tablespace ts_users datafile'/u01/app/oracle/oradata/ORA11GR2/ts_users01.dbf' size100m,'/u01/app/oracle/oradata/ORA11GR2/ts_users02.dbf' size 100m; Tablespace created.&n...
【优化】查询性能差的sql
模拟场景:当突然发现cpu使用率陡然升高,而不知道是谁进行的操作,可以通过top命名查看对应的pid(cpu使用率陡然升高的用户会话),然后查询对应会话的sid,serial#,最后和业务部门等联系看看能不能杀掉此会话,能就杀,不能CPU高也没办法,业务需要。 实验:一:在虚拟机内执行查询语句:1:会话1...
【优化】DBMS_MONITOR包之生成跟踪文件
DBMS_MONITOR包为了使跟踪更加灵活,oracle 10g后dbms_monitor就出现了,可以说它的灵活性是比以往的任何跟踪工具都要强,它可以跟踪指定的session,module或者整个数据库,你可以用它来明确的指定是否开启对绑定变量或者等待事件的追踪,详细的dbms_monitor过程和函数可以用desc dbms_monitor查看或者查看官方文档。...
【优化】10046事件之生成跟踪文件
10046事件:1)10046事件分类10046 事件按照收集信息内容,可以分成4个级别:Level 1:跟踪sql语句,包括解析、执行、提取、提交和回滚等;等同于SQL_TRACE 的功能Level 4:在Level1的基础上增加收集绑定变量的信息Level 8:在Level1 的基础上增加等待事件的信息Level 12:等同于Level4+Level...
【优化】SQL_TRACE之生成跟踪文件
一:跟踪文件:Oracle跟踪文件分为三种类型,一种是后台报警日志文件,记录数据库在启动、关闭和运行期间后台进程的活动情况,如表空间创建、回滚段创建、某些alter命令、日志切换、错误消息等。在数据库出现故障时,应首先查看该文件,但文件中的信息与任何错误状态没有必然的联系。后台报警日志文件保存BACKGROUND_D...
【优化】统计信息(直方图)收集、管理与清除
收集统计信息? DBMS_STATS包– 专门为CBO提供信息源– 可以进行数据分析的多种组合– 可以对分区进行分析– 可以对分析数据进行管理(备份、恢复、删除等)– dbms_stats可以并行分析,并行进行,并且对多个用户,多个Table;– dbms_stats有自动分析的功能;Oracle自动收集统计信息? Oracle11g的默认设...
【优化】10053事件
借助Oracle的10053事件event,我们可以监控到CBO对SQL进行成本计算和路径选择的过程和方法。即SQL为什么要这样执行;10053事件有两个级别:Level 2:2级是1级的一个子集,它包含以下内容:Column statisticsSingle Access PathsJoin CostsTable Joins ConsideredJoin Methods Considered (NL...
【优化】参数SESSION_CACHED_CURSORS与解析之间的关系
一:参数SESSION_CACHED_CURSORS,就是说的是一个session可以缓存多少个cursor(软软解析),让后续相同的SQL语句不再打开游标,从而避免软解析的过程来提高性能,软解析同硬解析一样,比较消耗资源。三:另外检查SESSION_CACHED_CURSORS参数是否设置的合理,可以从两个statistic来检查,即selectname,value from v$sys...
【优化】父子游标
Oracle设计shared pool内存的一个主要目的就是语句共享,通过语句共享,节省语句的解析时间,从而得到性能的提升。 查看语句共享可以借助两个数据字典:V$SQLAREA和V$SQLV$SQLAREA:保留SQL语句的父游标信息,可以通过SQL_ID标识,其中的VERSION_COUNT列表示子游标的数量V$SQL :保留SQL语...
【优化】hints之/*+append*/作业
Hints之/*+append*/作业:使用append提示进行insert叫做直接路径加载插入特点:2、它不记录日志,因此对于需要保证断电等意外情况发生能进行实例恢复的操作,不要进行此操作1、无论归档模式、还是非归档模式,append+nologing插入方式效果最好,生成最小的redo日志2、非归档模式下,append插入模式效...