【每日一摩斯】-Shared Pool优化和Library Cache Latch冲突优化 (1523934.1)-系列3
减轻Shared Pool负载Parse一次并执行多次 在OLTP类型的应用中,最好的方法是只让一个语句被解析一次,然后保持这个cursor的打开状态,在需要的时候重复执行它。这样做的结果是每个语句只...
【每日一摩斯】-Shared Pool优化和Library Cache Latch冲突优化 (1523934.1)-系列2
下面来谈一谈系列1中讲到的Literal SQL和Shared SQL的比较。首先是Literal SQL:在有完整的统计信息并且SQL语句在predicate(限定条件)中使用具体值时,基于成本的优化器 (CBO)能工作的最好。比较下面的语句:SELEC...
【每日一摩斯】-【序列】-续-RAC and Sequences (853652.1)
一个简单的sequence有什么可以说的呢?如果再这样认为就大错特错了。。。也许以下几点高人们都很清楚,但至少对于我来说,之前是陌生的,或者说是忽略的。1、CREATE SEQUENCE seq;,不带任何参数,那么默认建立的SQL...
【每日一摩斯】-Index Skip Scan Feature (212391.1)
INDEX Skip Scan,也就是索引快速扫描,一般是指谓词中不带复合索引第一列,但扫描索引块要快于扫描表的数据块,此时CBO会选择INDEX SS的方式。官方讲的,这个概念也好理解,如果将复合索引看做是一个分区表,其中分...
【每日一摩斯】-Shared Pool优化和Library Cache Latch冲突优化 (1523934.1)-系列1
什么是Shared Pool? Oracle的实例主要包括共享内存(主要是SGA,还有PGA)和Background Processes,其中SGA中又包括了Shared Pool、Buffer Cache、Redo Log Buffer以及其它一些内存区。&nb...
【每日一MOS】-RAC and Sequences (853652.1)
序列有四种组合:a. CACHE + NOORDERb. CACHE + ORDERc. NOCACHE + NOORDERd. NOCACHE + ORDER即使在单例配置下,当有大量的sequence需要产生的时候,性能压力和存储sequence值的行锁定代价相关。NOCACHE与CACHE的性...
【每日一MOS】- LGWR的trace日志中出现Warning信息
LGWR Is Generating Trace file with "Warning: Log Write Time 540ms, Size 5444kb" In 10.2.0.4 Database (文档 ID 601316.1)LGWR的trace日志中记录:Warning: log write time 540ms, size 5444KB*** 2008-05-...
【Oracle】-【心境】【AWR】- 等待事件的基准时间
今天有个AWR的问题,分析后找@dbsnake答疑,我的分析是表象的,没有抓住问题实质,@dbsnake老大给出了准确的解释,差距啊。。。不过这样才有动力继续努力,这次不会,还能总不会啊?备注:AWR中等待事件,例如db fil...
【Oracle】-【AWR/Stackpack】-AWR(Stackpack)执行权限
Oracle 9i执行Stackpack(10g是AWR),当前是一个普通账户,没有DBA权限。SQL> @awrrpt.sqlCurrent Instance~~~~~~~~~~~~~~~~ v$instance i *ERROR at line 6:OR...
【Oracle】-【TWO_TASK】-TWO_TASK环境变量的作用
杨大师(http://space.itpub.net/4227/viewspace-663069)介绍过TWO_TASK环境变量的作用,指出“在Unix和Linux环境下,可以设置TWO_TASK环境变量,当用户连接数据库且没有指定服务名时,会自动利用TWO_TASK的设置作为...
【Oracle】-【创建索引】-创建索引的操作原理与一些体会
1、将index key的data读到cache。如果之前这部分数据未读到DB Cache,那么此时可能有db file scatter read write的等待事件。2、对index key的data进行排序。排序的操作,如果sort_area_size或pga_aggregate_target...
【Oracle】-【ORA-01031】-创建基于数据字典表的视图无权限的问题
执行SQL> create or replace view redo_size as 2 select name, value from v$statname n, v$sesstat t,&n...
【Oracle】-【插入读取顺序】-插入读取之间的顺序关系
Oracle插入记录的顺序是否是读取的顺序?通过一个简单的实验验证:SQL> create table t( x int,a char(2000) default 'x',b char(2000) default 'x',c char(2000) default 'x');Table created.SQL> insert into t (x...
【Oracle】-【ROWNUM与索引】-索引对ROWNUM检索的影响
看到ASK TOM的一篇文章,挺有感触的。http://asktom.oracle.com/pls/apex/f?p=100:11:0::::P11_QUESTION_ID:32812348052主要问的是ROWNUM的问题。后面的一个讨论提问谈到:select ename, salfrom empwhere rownum<=1...
【Oracle】-【COMMIT对索引的影响】-从trace看COMMIT对索引的影响
之前看过老杨http://yangtingkun.itpub.net/post/468/231000的一篇文章,讲述了INSERT操作对全文索引无操作,但DELETE时为了防止删除的数据仍能通过索引的ROWID访问产生的错误,此时会进行索引的删除操作,因此大批...
【Oracle】-【权限-ORA-04043】- object does not exist
用非dba账号(但赋予了DBA角色)登录一个新的10g数据库想看下版本号,SQL> desc v$instance;ERROR:ORA-04043: object "SYS"."V_$INSTANCE" does not exist奇怪,之前有个9i的库,同样的账号就可以查看呢???...
【Oracle】-【权限-ORA-04043】- object does not exist
用非dba账号(但赋予了DBA角色)登录一个新的10g数据库想看下版本号,SQL> desc v$instance;ERROR:ORA-04043: object "SYS"."V_$INSTANCE" does not exist奇怪,之前有个9i的库,同样的账号就可以查看呢???分析:这...
【Oracle】-【权限-ORA-04043】- object does not exist
用非dba账号(但赋予了DBA角色)登录一个新的10g数据库想看下版本号,SQL> desc v$instance;ERROR:ORA-04043: object "SYS"."V_$INSTANCE" does not exist奇怪,之前有个9i的库,同样的账号就可以查看呢???分析:这...
【Oracle】-【体系结构-LGWR】-LGWR的一些理解
LGWR的一些理解:LGWR,是Log Writer的缩写,也是一种后台进程。主要负责将日志缓冲内容写到磁盘的在线重做日志文件或组中。DBWn将dirty块写到磁盘之前,所有与buffer修改相关的redo log都需要由LGWR写入磁盘的在线...
【Oracle】-【体系结构-DBWR】-DBWR进程相关理解
对DBWR的一些理解首先从名称上,DBWR全称是Database Writer Process,属于Oracle后台进程的一种,有的地方也叫DBWn,我想这里是出于DBWR进程个数的原因,DBWR进程在一个Oracle Server中可以最多有20个,编号是DBW1-D...