Oracle Performance
Dave
The important thing in life is to have a great aim and the determination to attain it !
展开
-
Oracle SYS.AUDSES$ 序列 说明
一.SYS.AUDSES$序列说明1.1 MOS 说明MOS 文档:How Sessions get Their AUDSID Identifier [ID 122230.1] Sessionsconnecting to an Oracle database have a number of identifiers assigned to themwhich can be found in the原创 2012-02-07 16:33:53 · 8882 阅读 · 0 评论 -
Oracle ASH(Active Session History) 说明
<br /> <br /> 在Oracle 10g中,推出了一些与DB 性能相关的功能,比如AWR, ADDM, STA, 已经这篇讲的ASH(Active Session History)。<br /> <br />关于其他的几个功能说明,参考我之前的Blog:<br /> Oracle AWR 介绍<br /> http://blog.csdn.net/tianlesoftware/archive/2009/10/16/4682300.aspx<br /> <br /原创 2011-05-26 23:24:00 · 20565 阅读 · 0 评论 -
Oracle 判断 并 手动收集 统计信息 脚本
一. 说明 在之前的blog: Oracle Statistic 统计信息 小结 http://blog.csdn.net/tianlesoftware/archive/2009/10/15/4668723.aspx 里对统计信息的收集有说明, Oracle 的Automatic Statistics Gathering 是通过原创 2011-05-25 20:31:00 · 15824 阅读 · 0 评论 -
根据 dba_errors 制定 数据库报警邮件
<br /> <br />一. dba_errors 表<br /> <br />官网对这个表的说明如下:<br /> <br />ALL_ERRORS:describes the current errors on the stored objects accessible to the current user.<br />DBA_ERRORS:describes the current errors on all stored objects in the database.<br /> <br /原创 2011-05-19 23:23:00 · 5662 阅读 · 0 评论 -
Oracle alter index rebuild 与 ORA-08104 说明
在ITPUB 论坛上看到的一个帖子,很不错。根据论坛的帖子重做整理了一下。 原文链接如下: alter index rebuild online引发的血案 http://www.itpub.net/thread-1445427-1-1.html 一. 官网说明在MOS 上的一篇文章讲到了rebuild online 和offline的区别: Index Reb原创 2011-06-12 01:37:00 · 18736 阅读 · 0 评论 -
对 IO 和 CPU 使用率 的一次小优化
端午放假之后,从6月7日开始,DB 就不太稳定,alert log 出现了:checkpoint not complete, cannot allocate new log 的警告。 所以加了一个online redo log group。 不过警告并没有因此消失,第二天又加了一组。 原来是4组,加了2组之后就有6组。 而且每天的归档也比以前增加了1G多。 CPU 也上升到了原创 2011-06-10 20:11:00 · 6185 阅读 · 1 评论 -
enq:SQ contention / row cache lock / DFS lock handle(SV) 等待事件 说明
enq:SQ contention/row cache lock/DFS lock handle(SV) 这三个等待事件都与Oracle 的Sequence 有关。 有关Sequence说明,参考我的Blog: Oracle Sequence Cache 参数说明 http://blog.csdn.net/tianlesoftware/archi原创 2011-06-09 20:11:00 · 13163 阅读 · 0 评论 -
Oracle enq: TX contention 和 enq: TM contention 等待事件说明
和Oracle性能优化密切相关的一些知识参考如下Blog: Oracle 常见的33个等待事件 http://blog.csdn.net/tianlesoftware/archive/2010/08/12/5807800.aspx 锁 死锁 阻塞 Latch 等待 详解 http://blog.csdn.net/tianl原创 2011-06-04 18:15:00 · 13514 阅读 · 0 评论 -
AWR 报告 查看 数据库 负载
<br /> <br /> AWR 报告是DBA常用的一个性能报告。关于AWR 报告的生成,参考我的Blog:<br /> Oracle AWR 介绍<br /> http://blog.csdn.net/tianlesoftware/archive/2009/10/16/4682300.aspx<br /> <br />在AWR 报告的前第二部分就是有关快照的一个统计信息说明。<br /> <br />Snap Id<br />Snap Time<br />Sessio原创 2011-05-31 13:39:00 · 9275 阅读 · 2 评论 -
Oracle 碎片整理 问题
数据库碎片是影响数据库性能的一个大因素,应及时发现并整理碎片。 一. 碎片是如何产生的 当创建一个数据库实例时,会分成称为表空间(tablespace)的多个逻辑段(segment),如系统(system)表空间,临时(temporary)表空间等。一个表空间可以包含多个数据范围(extent)和一个或多个自由范围块,即自由空间(free space)。原创 2009-11-03 18:07:00 · 10920 阅读 · 1 评论 -
Oracle Statistic 统计信息 小结
一. Statistic 说明 Oracle 官网对Statistic 有详细说明,参考: Managing Optimizer Statistics http://download.oracle.com/docs/cd/B19306_01/server.102/b14211/stats.htm#sthref1068原创 2009-10-14 12:18:00 · 40375 阅读 · 6 评论 -
Oracle DML NOLOGGING
一. NOLOGGING 说明在对大表插入数据的时候,经常会用到nologging 选项。Nologging 并不是不产生redo,nologging + direct 只是不会对数据产生 redo(但依然有其他的redo)。同理 logging + direct 下 undo 也是大大地减少, 减少的是 数据的undo ,这里强调的是 数据本身的undo ,就如同 redo的减少也一样,是 数据本身的 redo ,这和数据库是否产生 redo 和 undo 是不同的概念,比如空间分配的 redo原创 2010-06-29 13:19:00 · 8429 阅读 · 0 评论 -
dba_tables 和 dba_segments 表中 blocks 的区别
<br /> <br />创建测试表:<br />SQL> create table t5(id int);<br />表已创建。<br />SQL> insert into t5 values(1);<br />已创建 1 行。<br />SQL> inse原创 2010-06-27 12:59:00 · 9254 阅读 · 1 评论 -
Oracle 索引的维护
<br />一.查看系统表中的用户索引<br />在Oracle中,SYSTEM表是安装数据库时自动建立的,它包含数据库的全部数据字典,存储过程、包、函数和触发器的定义以及系统回滚段。<br />一般来说,应该尽量避免在SYSTEM表中存储非SYSTEM用户的对象。因为这样会带来数据库维护和管理的很多问题。一旦SYSTEM表损坏了,只能重新生成数据库。我们可以用下面的语句来检查在SYSTEM表内有没有其他用户的索引存在。<br /><br />/* Formatted on 2010/6/19 13:22:原创 2010-06-19 22:39:00 · 17410 阅读 · 2 评论 -
Oracle 使用 ass.awk 工具查看 system state dump 说明
如果Oracle数据库hang住了,对Oracle做system dump,或做 hang analyze,是研究和解决问题的有效办法。如果能够连接数据库,并能够进行操作,那么用oradebug是简单快捷的办法。 OracleHANGANALYZE 功能诊断 DBhanginghttp://blog.csdn.net/tianlesoftware/article/details/6321961 O原创 2012-02-06 20:48:09 · 12832 阅读 · 0 评论 -
Oracle 查看 表 存储过程 触发器 函数 等对象定义语句的方法
<br />有时候,我们想查看表,存储,触发器等对象的定语语句,有以下两种方法:<br />1. 查 all_source 表<br />2. 用 DBMS_METADATA 包。 <br /><br />一. 通过 all_source 表<br /><br />先来确认下,通过all_source 表可以查看哪些类型的对象:<br />SQL> SELECT distinct type FROM ALL_SOURCE;<br />TYPE<br />------------<br />PROCEDURE原创 2010-06-19 00:24:00 · 22754 阅读 · 1 评论 -
Oracle 10.2.0.5.4 Patch Set Update (PSU) – Patch No: p12419392
有关Oracle patch和PSU,PSR 说明参考我的blog:Oracle 补丁体系 及opatch 工具 介绍http://blog.csdn.net/tianlesoftware/article/details/5809526 Oracle 10g 最新的版本是10.2原创 2011-09-21 14:09:51 · 13548 阅读 · 2 评论 -
Oracle RDA(Remote Diagnostic Agent) 工具说明
一.RDA 说明 RDA(RemoteDiagnostic Agent)是oracle用来收集、分析数据库的工具,运行该工具不会改变系统的任何参数,RDA收集的相关数据非常全面,可以简化我们日常监控、分析数据库的工作。 一般Oracle 原厂的人巡检也是使原创 2011-09-07 23:44:15 · 19433 阅读 · 2 评论 -
v$sql,v$sqlarea,v$sqltext 和 v$sql_plan 说明
<br /> <br />一. 先看官网对这几个视图的说明(ORACLE 11gR2)<br />1.1 V$SQL<br /> V$SQL lists statistics on shared SQL areas without the GROUP BYclause and contains one row for each child of the original SQL text entered. Statistics displayed in V$SQL are normally updat原创 2011-01-10 21:44:00 · 8260 阅读 · 0 评论 -
Oracle errorstack 工具 说明
Errorstack 和 oradebug 命令类似,都是帮助我们诊断错误信息。有关oradebug 参考我的Blog: Oracle oradebug 命令 使用说明 http://blog.csdn.net/tianlesoftware/archive/2011/06/04/6525628.aspx Errorstack原创 2011-06-04 01:59:00 · 9176 阅读 · 0 评论 -
Oracle oradebug 命令 使用说明
在之前的HangAnalyze 中有使用oradebug命令,在这篇文章里,我们主要是重点看一下这个oradebug命令: Oracle HANGANALYZE 功能诊断 DB hanging http://blog.csdn.net/tianlesoftware/archive/2011/04/13/6321961.aspx 一. O原创 2011-06-04 00:38:00 · 37605 阅读 · 0 评论 -
Oracle 大规模 delete,update 操作 注意事项
一. 说明 如果对大表进行大规模的delete 和update,那么可以注意一下如下说明: (1) 查看执行计划,如果说删除的记录很多,走索引的成本会比全表扫描更大,因为更新数据时还需要做一些约束校验和创建index entry。而且对于多CPU 情况,全表扫描还可以使用并行的特性。 Oracle Parallel Execut原创 2011-06-25 15:40:00 · 10001 阅读 · 1 评论 -
Oracle latch free 等待事件 说明
一. Latch 说明有关Latch,在我之前的Blog里也有一些说明: 锁 死锁 阻塞 Latch 等待 详解 http://blog.csdn.net/tianlesoftware/archive/2010/08/20/5822674.aspx Latch是一种轻量级的锁,是一种低级排队(串行)机制。一般来说,latch由三种内原创 2011-06-13 11:20:00 · 14989 阅读 · 0 评论 -
Oracle 11g 使用 dbms_parallel_execute 对大表进行并行update
一. dbms_parallel_execute说明Updating Large Tables in Parallel TheDBMS_PARALLEL_EXECUTEpackage enables you to incrementally update the d原创 2011-07-13 14:45:06 · 8961 阅读 · 4 评论 -
Oracle Pipelined Table Functions 与 性能优化 说明
一. Pipelined table functions 官网说明如下: http://download.oracle.com/docs/cd/E11882_01/appdev.112/e17126/tuning.htm#BCGICBDF C原创 2011-07-12 23:32:08 · 6981 阅读 · 0 评论 -
Oracle bulk 示例
之前整理了一篇blog,讲了一些bulk 的理论知识,参考: Oracle Bulk 与 性能优化 说明 http://blog.csdn.net/tianlesoftware/article/details/6578351 在这篇,主原创 2011-07-12 00:51:22 · 9848 阅读 · 0 评论 -
Oracle Index Clustering Factor 说明
一. 官网说明 The indexclustering factor measures row order in relation to an indexed value suchas employee last name. The more o原创 2011-07-05 13:08:24 · 8130 阅读 · 0 评论 -
Oracle arraysize 和 fetch size 参数 与 性能优化 说明
一. 参数说明1.1 arraysize 参数 Oracle sqlplus 有很多设置,这个在我之前的blog有说明: Oracle sqlplus 常用命令总结 http://blog.csdn.net/tianlesoftware/archive/2009/12/19/5040984.aspx原创 2011-07-01 16:54:00 · 19035 阅读 · 0 评论 -
Oracle PL/SQL 优化与调整 -- Bulk 说明
一. Bulk 概述 本来只想测试一下Bulk Collect 和update性能的,但发现Bulk 的东西还是很多的,在OTN上搜了一些,整理如下。 1.1 Bulk Binding 和 Bulk SQLFrom: http://download.oracle.com/docs/cd/E11882_01/appdev.112/e17125/adfns_packages.htm#A原创 2011-06-30 23:10:00 · 11134 阅读 · 1 评论 -
Oracle 利用 rowid 提升 update 性能
关于ROWID的介绍参考我的Blog: Oracle Rowid 介绍 http://blog.csdn.net/tianlesoftware/archive/2009/12/16/5020718.aspx 关于大表Update 的一个讨论,参考itpub: http://www.itpub.net/vie原创 2011-06-30 00:34:00 · 21406 阅读 · 2 评论 -
Oracle db file parallel write 和 log file parallel write 等待事件 说明
一. db file parallel write 等待事件引自如下blog:http://oradbpedia.com/wiki/Wait_Events_-_db_file_parallel_write db file parallel write The db file parallel write wait event belongs to the Or原创 2011-06-14 23:35:00 · 9886 阅读 · 0 评论 -
Oracle ORA-04031 错误 说明
在 老熊 的Blog上看到他们写的有关ORA-04031的文章,转到blog。 老熊的Blog:http://www.laoxiong.net/an-ora-04031-case.html ORA-04031这个错误,几乎每一个专业的DBA都遇到过。这是一个相当严重的错误,Oracle进程在向SGA申请内存时,如果申请失败,则会报这个错误。大部转载 2011-06-15 14:42:00 · 10606 阅读 · 0 评论 -
Oracle 多表 连接 顺序 与 性能关系 测试
一. 创建表并insert 数据create table ta (id number,name varchar2(10));create table tb(id number,job varchar2(10)); beginfor i in 1..1000000 loopbegininsert into ta values(i,dave);commit;原创 2011-06-16 00:57:00 · 10123 阅读 · 0 评论 -
由 bind_mismatch 引起的 大量 version_count 问题
从AWR报告里发现一个SQL存在大量的version_count. SYS@xezf(qs-xezf-db1)> select sql_id,version_count from v$sqlarea where version_count> 500 order by 2 desc ; SQL_ID VERSION_COUNT------------- --原创 2011-06-24 22:01:00 · 10753 阅读 · 2 评论 -
Oracle v$session_longops 视图说明
一. 官网说明1.1 v$session_longops V$SESSION_LONGOPS displays the status of various operations that run for longer than 6 seconds (in absolute time). These operations currently include many原创 2011-06-22 21:42:00 · 8398 阅读 · 0 评论 -
Oracle Recursive Calls 说明
一. Recursive Calls 说明在执行计划的统计信息里有如下信息: SYS@anqing2(rac2)> set autot trace statisticsSYS@anqing2(rac2)> select * from ta,tb where ta.id=tb.id and ta.id 9 rows selected. Statistics原创 2011-06-22 17:15:00 · 12786 阅读 · 2 评论 -
Oracle Shared pool 详解
一. Shared Pool 概述 在之前的blog对Oracle 的内存架构也做了一个概述,参考: Oracle 内存 架构 详解 http://blog.csdn.net/tianlesoftware/archive/2010/05/15/5594080.aspx原创 2011-06-22 14:30:00 · 23921 阅读 · 0 评论 -
Oracle 从缓存里面查找真实的执行计划
有关Oracle 的执行计划说明,参考我的Blog: Oracle Explain Plan http://blog.csdn.net/tianlesoftware/archive/2010/08/20/5827245.aspx 一. 查看当前session 的SID SYS@anqing1(rac1)> S原创 2011-06-20 17:48:00 · 7809 阅读 · 1 评论 -
Oracle 下 unpin 的cursor 才能被移除
最近南方的雨下的很烦人。 暴雨,一下就是一天,不过平时我也不怎么出门,所以也就无所谓了。 在家看看电影,做做测试,在补补觉,周末2天也就过去了。 刚才owind 让我做了个测试。 正在使用的cursor 能否被移除。 关于cursor的东西, 几个星期前就准备整理一下的,可是看了一下官方文档,东西太多了。 一时也没不知道从哪下手。 就原创 2011-06-18 21:07:00 · 5196 阅读 · 0 评论 -
Oracle cursor_sharing 参数 详解
一. 官网的说明http://download.oracle.com/docs/cd/E11882_01/server.112/e17110/initparams042.htm#REFRN10025 1.1 CURSOR_SHARINGPropertyDescriptionParameter typeStri原创 2011-06-17 14:24:00 · 19730 阅读 · 1 评论