-
Recent Posts
Recent Comments
- yangtingkun on 非空字段空值对查询的影响
- Eric Zong on 非空字段空值对查询的影响
- Kamus on Oracle Ace Director
- 设置全局死锁优先级 | yangtingkun on RAC全局死锁检测时间
- ORA-600(krbounotread_noctx)错误 | yangtingkun on ORA-600(krboReadBitmap_badbitmap)错误
Archives
- December 2020
- February 2019
- December 2018
- November 2018
- October 2018
- July 2018
- June 2018
- May 2018
- July 2016
- July 2013
- June 2013
- November 2012
- October 2012
- September 2012
- August 2012
- July 2012
- June 2012
- May 2012
- April 2012
- March 2012
- February 2012
- January 2012
- December 2011
- November 2011
- October 2011
- September 2011
- August 2011
Categories
Meta
Author Archives: yangtingkun
查询条件为ROWNUM=1仍产生长时间等待
正常情况下,指定了ROWNUM=1会迅速的返回结果,但是也有异常的情况产生。 其实ROWNUM=1之所以可以快速的返回结果,是由于执行计划中采用了STOPKEY的方式,当查询到第一条符合要求的记录后,执行就中止了。 但是ROWNUM=1并非对所有情况都适用,比如如果内存查询包含GROUP BY操作,那么ROWNUM=1就无法推到GROUP BY查询内部,因此这时的ROWNUM=1的条件对于查询速度的提高就非常有限了。还有一种情况,在指定了一个限制条件后,加上ROWNUM=1后,发现查询效率仍然不高。这时因为表中满足指定限制条件的记录非常少或者根本没有,以致于Oracle要扫描全部表数据后才能返回结果。 但是客户碰到了的现象和上面描述的几种情况都不相符,查询只是一个单表查询,唯一的限制条件就是ROWNUM=1,没有GROUP BY和ORDER BY语句,语句就是简单到不能再简单的:select * from RTDRULETRACEHISTORY where rownum = 1。 检查了这个语句的执行计划,并未发现异常之处: Id Operation Name ROWS Bytes Cost (%CPU) TIME 0 SELECT STATEMENT 2 (100) 1 COUNT STOPKEY 2 TABLE ACCESS FULL RTDRULETRACEHISTORY 1 827 2 … Continue reading
FAL_SERVER设置错误导致SWITCHOVER切换HANG住
客户在进行DATA GUARD的SWITCHOVER时,操作长时间没有反应。 操作如下: SQL> ALTER DATABASE COMMIT TO SWITCHOVER TO PHYSICAL STANDBY WITH SESSION SHUTDOWN;SQL> ALTER DATABASE COMMIT TO SWITCHOVER TO PHYSICAL STANDBY WITH SESSION SHUTDOWN; 这个命令等待很长时间没有结束,虽然数据库的SWITCHOVER_STATUS并非TO STANDBY而是SESSION ACTIVE,但是几乎所有的LOCAL=NO的连接已经在操作系统级kill掉了,而且使用了WITH SESSION SHUTDOWN语法,理论上不应该是连接问题导致SWITCHOVER无法完成。 检查告警日志: Fri Oct 14 23:03:45 2011 ALTER DATABASE COMMIT … Continue reading
DATA GUARD出现ORA-16032错误
客户在配置DATA GUARD过程中碰到ORA-1031和ORA-16032错误。 其中ORA-1031错误很直观,直接报错在归档时没有权限: Wed Sep 28 15:43:26 2011 ALTER SYSTEM SET log_archive_dest_2=’service=db1st lgwr async valid_for=(ONLINE_LOGFILES,PRIMARY_ROLE) db_unique_name=db1st’ SCOPE=BOTH; Wed Sep 28 15:43:26 2011 ALTER SYSTEM SET log_archive_dest_state_1=’enable’ SCOPE=BOTH; Wed Sep 28 15:43:26 2011 ALTER SYSTEM SET log_archive_dest_state_2=’enable’ SCOPE=BOTH; Wed Sep 28 … Continue reading
Posted in ORACLE
Tagged data guard, DG_CONFIG, LOG_ARCHIVE_CONFIG, LOG_ARCHIVE_DEST_N, ORA-16032, ORA-16055
Leave a comment
DATA GUARD出现ORA-26040错误
客户在搭建好的DATA GUARD环境出现了ORA-26040错误。 在备库只读打开时,出现了下面的错误: ORA-12801: error signaled IN parallel query server P000 ORA-01578: ORACLE DATA block corrupted (file # 75, block # 1046445) ORA-01110: DATA file 75: ‘/oradata2/accdb/a_txn_data09.dbf’ ORA-26040: DATA block was loaded USING the NOLOGGING OPTION ORA-12801: error signaled IN … Continue reading
《Oracle DBA手记3——数据库性能优化与内部原理解析》出版
发现最近总在打广告,等待已久的《Oracle DBA手记3——数据库性能优化与内部原理解析》一书终于出版了。 在前两天我们组织的Oracle技术嘉年华大会上,有一些朋友已经拿到了这本书,而我是今天刚刚才拿到手的。 DBA手记2在筹划阶段,Eygle就要我提供稿件,当时手头事情比较多,稿件的整理慢了一步,发给Eygle的时候,他已经将其他的稿件提交给出版社了,于是这些文章就放到了DBA手记3中。 无论是自夸也好,自谦也罢,书已经出版了,作者再说什么就都没有什么意义了,还是让读者去自己评判吧。
Posted in NEWS
Leave a comment
20111021 Oracle技术嘉年华落幕
为期两天的Oracle技术嘉年华今天结束了,准备了这么久,这么快就结束还真有点不适应。 当然这种会议不太可能和Oracle的Open World那样,一搞就是4天,短短两天会议对于我们的组织方来说,已经是不小的考验了。不过庆幸的是,直到最后一场演讲的结束,会场上的空位也并不太多。对于常参加会议的都比较清楚,一到下午最后一两场演讲,基本上很多人就会提前走,而到了会议的最后一天下午就更是如此,一般来说还有一半的人就很不错了,但是今天的会议到最后一个演讲之前,抽奖就完成了,即使这样,提前退场的也是寥寥无几。 作为会议的主办方,如果大家对于这次会议满意就是我们最大的欣慰了。在此感激所有参加这次会议的朋友们。
Posted in NEWS
Leave a comment
20111020 Oracle技术嘉年华首日
今天筹划已久的“Oracle技术嘉年华”(OTN China Tour 2011)在北京国宾饭店召开。 以前参加过很多次大会,直到这次才感受到成功举办一次这种规模的大会有多么困难,当然这也和我们公司在这方面没有太多经验有关系,幸好我们的联合主办方ITPUB&IT168在会议组织方面有比较丰富的经验,在一定程度上弥补了我们的不足。即便如此,很多同事为这次大会的召开仍然付出了大量的心血,由于前一段时间比较忙,自己在大会的准备工作上,并没有投入太多的精力,在这里对他们表示感谢。 今天会议的各个主题十分精彩,这与国内外演讲者的自身水平有很大关系,而且这场会议只有一两个赞助商,所以绝大部分场次的主题都是具有一定深度的技术分享,在一般会议中被广为诟病的产品广告被压缩到最小的程度。这也是我们这次会议之所以称谓技术嘉年华的主要原因。
Posted in NEWS
Leave a comment
ORA-600(729)错误
客户数据库出现ORA-600[729]错误。 详细信息如下: Sun Oct 16 04:31:31 2011 Errors IN file /u01/app/oracle/admin/db1/udump/db1_ora_6459722.trc: ORA-00600: internal error code, arguments: [729], [360], [SPACE leak], [], [], [], [], []Sun Oct 16 04:31:31 2011 Errors in file /u01/app/oracle/admin/db1/udump/db1_ora_6459722.trc: ORA-00600: internal error code, arguments: [729], [360], … Continue reading
创建磁盘组时出现ORA-15238错误
测试不同的AU_SIZE的影响时,发现了这个错误。 建立AU_SIZE大小为64M的磁盘组出现下面的错误: SQL> CREATE diskgroup data_au64m external redundancy disk ‘/dev/asm-disk3’ attribute ‘au_size’=’64m’,’compatible.asm’=’11.2′,’compatible.rdbms’=’11.2′; ORA-15018: diskgroup cannot be created ORA-15238: 64m IS NOT a valid VALUE FOR attribute au_sizeSQL> create diskgroup data_au64m external redundancy disk ‘/dev/asm-disk3’ attribute ‘au_size’=’64m’,’compatible.asm’=’11.2′,’compatible.rdbms’=’11.2′; ORA-15018: diskgroup cannot be … Continue reading