Monthly Archives: September 2012

20120930OOW大会开幕

虽然正式的大会要到10月1日,才算正式开始,但是今天晚上Larry的演讲才是大会开幕的标识。 上午去会场听了超大型数据库设计的主题,演讲者是Morpho,Oracle的ACE,他的主题围绕大数据量的数据库应该在设计和维护时应该考虑的方面。其内容涉及数据加载、分区、并行执行、备份恢复、统计信息收集、迁移等多方面的内容。在演讲的最后给出了一个真实的案例,数据库从11.2.0.2迁移到11.2.0.3,数据量达到40T左右,几乎是零DOWN机时间。虽然迁移方式仍然是利用DATA GUARD的功能,但是实现方法上却因为收到存储空间以及时间等多方面的限制和普通的备份恢复的方式有很大的不同。他利用了RMAN的INCREMENT UPDATABLE BACKUP功能,在本地生成DATAFILE COPY,然后利用DBMS_TRANSFER_FILE从本地的FRA直接复制到远端数据库的ASM中,然后利用归档在本地进行恢复。除了这个案例外,演讲中提到的11g对于分区表收集统计信息的新特性incremental statistics gathering和concurrent statistics gathering对于大数据量的统计信息收集是非常有帮助的。12c已经来了,而11g的新特性还有很多不了解,很有压力啊。 在会场碰到了FENNG,从他去了杭州之后,这些年几乎没见过几次,没想到这次OOW倒是给了我们难得的叙旧机会。由于我是第一次到旧金山,FENNG自告奋勇带我去渔人码头转转,结果路上发现居然他不记路,而且也没有导航,于是我对于能否顺利到达并返回产生了怀疑。不过事实证明FENNG还是相当靠谱的,不过旧金山的CABLE CAR真是不靠谱,效率低得一塌糊涂,来回路上一共一个小时,在渔人码头转了一个半小时,而来回等车用了两个半小时。还好最后紧赶慢赶总算是赶上了Larry的演讲。 Oracle这次的大会的主题是云,旧金山满大街到处都是Oracle的广告:Hardware and Software Engineered to Work Together。Oracle的云服务包含Saas、PaaS和IaaS。Oracle在SaaS领域主要竞争对手是Salesforce,而不是SAP;在IaaS领域的竞争对手是亚马逊而不是IBM。在PaaS领域Oracle在数据库、中间件等多个产品都做到了NO1,于是Oracle提都没提竞争对手的事情。此外,Larry还介绍了Oracle12c以及ExadataX3,可惜由于要参加ACE dinner这部分没有听到,看来只能过几天再补了。 Ace晚宴离在渔人码头和金门大桥直接的位置,早知道就不急着往回赶了。现场无数的大牛,可惜认识的不多。Kamus倒是意兴盎然的四处邀请人来参加明年的Otn China Tour活动,这里就体现出英语好与不好的区别了。

Posted in NEWS | Tagged , , | Leave a comment

20120929赴旧金山参加OOW

前年参加过北京的Oracle Open World,而到旧金山参加OOW还是第一次。 其实早在04年的时候北京就举办过OOW大会,只不过那个时候还没有能力参加;到了07年的时候在上海举行,很多朋友都参加了那次的盛会,可惜当时走不开也没有参加;到了10年北京的那次,其实才是第一次参加OOW。而美国旧金山Oracle总部的OOW就更不用说了。好在今年的ACE Director顺利的批了下来,这才使得这趟OOW之旅顺利成行。 巧合的是,飞机上旁边座位的兄弟也是去参加OOW大会的,他是Oracle的员工,而我坐的这架航班,Oracle公司的人大约有7、8个人之多。更巧的是,机场外等车的时候碰到了崔华,看来OOW使得很多熟人都聚集到了旧金山。 由于申请的是BLOGER方式的OOW门票,因此办理签到稍显麻烦,在酒店一层的签到处无法进行办理,只能跑到会场处的指定地点进行办理。好在Kamus下午刚刚办完,在他的帮助下,顺利的拿到了Oracle OpenWorld的入场券,明天就可以开始参加会议了。不过真正的重头戏还要明天下午Larry的演讲之后才会开始。 晚上和Kamus、Biti_rainy一起吃的晚饭,在Biti的要求下,找了一家中餐馆,味道很地道,几乎找不到一点旧金山的感觉,因为整个点菜过程都是用中文完成的。

Posted in NEWS | Tagged , , , | Leave a comment

ORA-600(kauxs_do_jou:3)错误

客户9.2.0.6数据库出现ORA-600(kauxs_do_jou:3)错误。 错误信息为: Wed Mar 28 22:44:48 2012 Errors IN file /DATA/oracle/admin/orcl/udump/orcl_ora_19724.trc: ORA-00600: 内部错误代码,参数: [kauxs_do_jou:3], [68], [], [], [], [], [], [] Wed Mar 28 22:46:38 2012 Errors IN file /DATA/oracle/admin/orcl/udump/orcl_ora_19856.trc: ORA-00600: 内部错误代码,参数: [kauxs_do_jou:3], [68], [], [], [], [], [], [] … Continue reading

Posted in BUG | Tagged , , , , , , | Leave a comment

ITPUB SQL大赛第四期

SQL大赛第四期解法的最终答案。 第四期题目参考:http://www.itpub.net/thread-1411495-1-1.html版主newkid点评参考:http://www.itpub.net/thread-1417576-1-1.html 最近整理BLOG文章时发现,这篇文章当时没有贴出来。由于当时发现最后一题出现了错误,且手头的事情比较多,本打算搞清楚之后再把结果贴出来,没想到后来忘记了。虽然已经过去了一年了,不过信守自己的承诺,还是把最终结果贴出来。 我的代码为: WITH DAY AS ( SELECT TO_DATE(:P_START_DATE, ‘YYYYMMDD’) + ROWNUM – 1 DAY FROM DUAL CONNECT BY ROWNUM <= TO_DATE(:P_END_DATE, ‘YYYYMMDD’) – TO_DATE(:P_START_DATE, ‘YYYYMMDD’) + 1 ), COMPANY_INFO AS ( SELECT A.USER_ID, SERVICE_ID, B.COMPANY_ID, GREATEST(START_DATE, TO_DATE(:P_START_DATE, ‘YYYYMMDD’)) … Continue reading

Posted in ORACLE | Tagged , , | Leave a comment

ORA-600(504)(row cache objects)错误

客户数据库出现ORA-600(504)错误,其中第5个错误参数为row cache objects。 以前碰到过一个shared pool的相关latch:http://yangtingkun.itpub.net/post/468/526079 错误信息为: Wed Apr 18 06:03:41 2012 Errors IN file /DATA/oracle/admin/orcl/udump/orcl_ora_19038.trc: ORA-00600: 内部错误代码,参数: [504], [0x4628BD7A0], [32], [4], [ROW cache objects], [10], [2], [0x000000000] 数据库版本为9.2.0.6,根据MOS文档,导致问题的原因是查询了V$SQL_PLAN视图,且当前会话已经持有了一个不兼容的library cache latch。 Oracle给出的解决方法只有升级到10.2.0.1,对于10.2以下的版本,可以考虑设置隐含参数_cursor_plan_unparse_enabled的值为false来解决该问题。

Posted in BUG | Tagged , , , , | Leave a comment

ORA-7445(kpufdesc)错误

客户10.2.0.4 RAC数据库出现ORA-7445(kpufdesc)错误。 错误信息如下: Thu DEC 22 15:29:07 2011 Errors IN file /home/oracle/product/10.2.0/admin/orcl/bdump/orcl2_mmon_16893.trc: ORA-07445: exception encountered: core dump [kpufdesc()+634] [SIGSEGV] [Address NOT mapped TO object] [0x000000065] [] [] ORA-22303: TYPE "SYS"."ALERT_TYPE" NOT found 出现错误的进程是MMON进程,而报错信息中显示SYS用户的对象ALERT_TYPE无法找到,显然Oracle数据库中对象的状态不正常。根据MOS文档ORA-07445 [kpufdesc()+872] ORA-22303 and ORA-1403 [ID 1380614.1],导致错误产生的原因是ALERT_QUE队列的状态不正常。 接近方法就是重建ALTER_QUE队列。在11g中可以通过catmwin.sql来进行重建,对于当前的10.2版本,重建步骤为将系统至于restricted … Continue reading

Posted in BUG | Tagged , , , , , , , , | Leave a comment

系统出现cursor: mutex X等待导致实例HANG死

客户数据库出现明显的cursor: mutex X等待,尝试通过ALTER SYSTEM KILL SESSION的方式释放等待的会话,结果导致整个实例出现HANG死的情况。 数据库版本为10.2.0.4,检查数据库问题发生时刻的AWR报告,发现cursor: mutex X等待在AWR报告中并不明显,不但没有出现在TOP 5里,而在整个等待事件的排名中也排在非常靠后的位置,且该事件的总等待时间为0,这与客户反馈的大约70多个会话持续等待cursor: mutex X事件的描述极为不符。 导致这个现象的原因可能有两种,一种是虽然从V$SESSION中看到当前的等待是cursor :mutex X事件,但是该事件已经结束,因此会话的等待时间并未记录并汇总到这个事件的等待时间中;另外一种情况是Oracle对于这个事件的统计值存在错误。 继续分析AWR报告,可以发现VERSION COUNT报告中,最高的两个SQL已经远远超过了正常的范围,达到了13W以上,毫无疑问这肯定不正常的情况所致: Version Count Executions SQL Id SQL Module SQL Text 150,649 7q1tdx7ysmg6f ** SQL Text Not Available ** 134,787 fa3vfvs859n5n ** SQL Text Not … Continue reading

Posted in ORACLE | Tagged , , , , | Leave a comment

ORA-7445(lxsCntChar)错误

使用正则表达式导致的错误。 错误信息为: Fri DEC 16 15:37:51 2011 Exception [TYPE: SIGSEGV, Invalid permissions FOR mapped object] [ADDR:0x2AFEA42A4000] [PC:0x9016222, lxsCntChar()+210] [flags: 0x0, COUNT: 1] Errors IN file /u01/app/oracle/diag/rdbms/orcl/ods1/trace/orcl1_ora_12150.trc (incident=41375): ORA-07445: exception encountered: core dump [lxsCntChar()+210] [SIGSEGV] [ADDR:0x2AFEA42A4000] [PC:0x9016222] [Invalid permissions FOR mapped … Continue reading

Posted in BUG | Tagged , , , | Leave a comment

SCHEDULER调用XDB程序导致性能问题

客户数据库出现SCHEDULER后台作业频繁调用XDB包,导致系统性能受到影响,数据库版本为10.2.0.3。 导致性能问题的SQL为: BEGIN BEGIN IF (xdb.DBMS_XDBZ0.is_hierarchy_enabled_internal(sys.dictionary_obj_owner, sys.dictionary_obj_name, sys.dictionary_obj_owner)) THEN xdb.XDB_PITRIG_PKG.pitrig_truncate(sys.dictionary_obj_owner, sys.dictionary_obj_name); END IF; EXCEPTION WHEN OTHERS THEN NULL; END; BEGIN IF (xdb.DBMS_XDBZ0.is_hierarchy_enabled_internal(sys.dictionary_obj_owner, sys.dictionary_obj_name, sys.dictionary_obj_owner, xdb.DBMS_XDBZ.IS_ENABLED_RESMETADATA)) THEN xdb.XDB_PITRIG_PKG.pitrig_dropmetadata(sys.dictionary_obj_owner, sys.dictionary_obj_name); END IF; EXCEPTION WHEN OTHERS THEN NULL; END; END; 这个SQL在一小时的时间内执行了120多万次,平均每秒要执行160次,难怪会导致性能问题。Oracle在文档SQL IN XDB.DBMS_XDBZ0 … Continue reading

Posted in BUG | Tagged , , , | Leave a comment

ORA-600(kfgFinalize_2)错误

11.2.0.1的ASM出现ORA-600[kfgFinalize_2]错误。 错误信息为: Fri Jun 17 09:59:51 2011 NOTE: No asm libraries found IN the system * instance_number obtained FROM CSS = 2, checking FOR the existence OF node 0… * node 0 does NOT exist. instance_number = 2 Starting ORACLE … Continue reading

Posted in BUG | Tagged , , , , , | Leave a comment