dbms_stats.gather_schema_stats的GATHER STALE选项
dbms_stats.gather_schema_stats可以使用options => 'GATHER STALE'来只分析有过时的统计信息的表。那么Oracle是如何知道表的统计信息是过时(STALE)的呢?这就是本文探讨的问题。 &nb...
【HAOTPS beta2】-- 一款轻量级绿色的Oracle压力测试小工具
有时候我们需要完全模拟生产数据库的负载,需要自定义提供SQL语句,绑定变量采样的方法和各个语句执行的百分比,以便真实还原生产数据库在目标机器的压力情况。由于不方便使用一些带GUI的压力测试工具,所以自己写了...
How to enable NUMA on 10G @ linux
参见Oracle RDBMS is not detecting NUMA Nodes [ID 868642.1]当然首先保证平台支持:[root@xxx bin]# numactl --hardwareavailable: 2 nodes (0-1) 其实就是建立如下软连接:cd /usr/lib64ln -s libn...
ip_soft_rings_cnt参数与Server的压力测试
【好久没写文章了,都有点觉得自己太懒了。遂记录一则最近做的事情,分享给更多朋友。以后要多写多记录,决定了】问题:最近在做关于SUN SPARC平台和X86平台的机器的压力测试,实现方法是先抓取生产数据库在peak tim...
update global indexes的online的程度研究
我们知道,如果要在一个table partition上做DDL时,是可能会invalidate global index的。但是,如果我们加上update global indexes,或update indexes语句,那么Oracle会自动帮我们update global index,使其继续保...
【一记难忘的误操作】当shareplex的capture queue file被删除之后
2010年6月2日傍晚,月黑风高,不料天有不测风云,一次痛苦而难忘的误操作就发生于此。在生产环境的误操作尤其是DBA的梦魇。虽然最后竭尽全力,力挽狂澜,但仍心有余悸。 故事发生在为Ora...
ORA-38708与清除Recovery Area中的归档日志
如何删除flashback recovery area中的归档日志?简单的在操作系统层面rm虽然释放了硬盘空间,但是V$FLASH_RECOVERY_AREA_USAGE中并不知道。于是,当你希望再次enable flashback database时,会遇到如下错误:SQL...
oracle deadlock with TM lock in SX/SSX mode
通常情况下,dead lock是由应用的不合理造成,应该由PD解决,而非DBA。但何时为非通常情况呢? 今天遇到一个case,即为非通常情况。而他的通常的标志即为:在trc文件里的deadlock graph里,看见有SX/SS...
别忘记DBMS_LOGSTDBY.SKIP的转义符
在使用logical standby时,可以使用DBMS_LOGSTDBY.SKIP来不复制某些特定的objects。但是,如果我们希望不复制以'XXX_'开头的表,但保留以'XXX'开头的表,由于'_'代表任意字符,所以如果我们这样skip:EXECUTE DBMS_L...
安装oraInventory和使用opatch给Oracle打补丁
opatch是给Oracle打补丁的工具,命令使用起来简单方便。他默认地址在$ORACLE_HOME/OPatch/opatch,直接运行会显示所有可用命令。> $ORACLE_HOME/OPatch/opatchInvoking OPatch 10.2.0.3.0Oracle...
在线重定义表导致constraint变成novalidate
以前没注意过,今天发现在线重定义表会导致constraint变成novalidate。解决方法很简单,就是在dbms_redefinition.copy_table_dependents之后enable validate 中间表的这个constraint。写出来引起大家注意。SQL> crea...
ORA-01002 “fetch out of sequence”关于cursor的一个bug
今天发现一个PLSQL脚本报ORA-01002和ORA-06512:ERROR at line 1:ORA-01002: fetch out of sequenceORA-06512: at line 8 原来,脚本里包含两个表的两个cursor,然后分别对...
size auto比size skewonly聪明的一个地方
曾经我比较过dbms_stats.gather_table_stats里面method_opt参数的两个选项:size auto和size skewonly的区别,(详情请见 http://space.itpub.net/15415488/viewspace-591765)大致是讲size auto会多考虑colu...
研究控制全表扫描direct path reads的因素
常常有初学者问,全表扫描是否只有db file scattered read等待?答案明显是否定的。 全表扫描也可能会产生db file sequential read,也可能不产生读db file等待;当然,也可...
利用FGAC/VPD重写用户SQL
FGAC/VPD可以从安全方面限制用户在行级别的访问权限,对于安全性考虑的应用有很大帮助。另外,在一些特别特殊的情况下,可以通过它改写用户SQL的谓词(where condition)。这里step by step做一个例子,以供以后参...
利用incremental backup恢复丢失日志的standby
当standby已经丢失archive log之后怎么办?除了重建还有什么办法?答案就是利用incremental backup前滚standby。这个feature早就在官档上作为场景出现过,以前一直没有注意也没有看到,最近在生产数据库上做了一次...
加强版hao_show_space,For ASSM and MSSM both
经典的为MSSM提供服务的show_space家喻户晓。我是个lazy guy,所以写了个hao_show_space同时自动适应ASSM和MSSM的segments。主要是提供得比较人性化,其中把HWM的概念以更形象的方式显示出来。share给大家。结果显...
Lob internal experiments/discovery
下载地址: http://www.itpub.net/thread-1185046-1-2.html前不久有人提到了clob字段的效率问题,突然想起去年恰好研究了一点lob字段。google了能google的文章,metalink了可能的bug。也总结了很多牛人的实验,公司...
利用dbms_sql动态sql技术实现select * from <tab_name>;
今天帮pub上一位老兄解答一个问题:QUOTE: 原帖由 monkeyluo1202 于 2009-6-18 19:40 发表 各位大侠:我想创建一个存储过程:作用:输入一个表的名字就能显示这个表的所有字段的所有记录行若表名不存在,提示:...
x$bh的ADDR是啥东西?
在pub上有人问x$BH的ADDR这一列是什么意思?于是经过很长时间的实验,我自己得出的结论是:这一列是查询x$BH的这个session的PGA session heap中的一个地址。它既不是buffer header的地址,也不是cache buffer cha...