Tag Archives: partition

数据泵导入分区表长时间HANG住

客户10.2.0.3环境数据库在使用数据库导入分区表时,出现长时间HANG住的情况。 通过10046跟踪,发现等待发生在空闲等待wait for unread message on broadcast channel上,部分10046 TRACE摘录如下: ===================== PARSING IN CURSOR #27 len=93 dep=2 uid=0 oct=3 lid=0 tim=1314162845109698 hv=3190910778 ad=’5a938130′ SELECT NVL(SUM(data_io),0) FROM "SYS"."SEASHELL_ENTRY_P_20110126_88" WHERE process_order = :1 END OF STMT PARSE #27:c=0,e=76,p=0,cr=0,cu=0,mis=0,r=0,dep=2,og=1,tim=1314162845109693 BINDS #27: kkscoacd Bind#0 oacdty=02 … Continue reading

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

分区表UNUSED列后的EXCHANGE PARTITION操作

碰到一个有意思的问题,如果分区表执行过SET UNUSED操作,那么是否还可以进行分区的EXCHANGE操作。 一个简单的测试就可以说明这个问题: SQL> CREATE TABLE t_part_unused 2 (id NUMBER, name varchar2(30), other varchar2(30)) 3 partition BY range (id) 4 (partition p1 VALUES less than (10), 5 partition pmax VALUES less than (maxvalue)); TABLE created. SQL> INSERT INTO t_part_unused 2 … Continue reading

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

10g中DBA_TAB_STATISTICS的STATTYPE_LOCKED列对分区锁定显示为空的解决

Oracle10g的DBA_TAB_STATISTICS视图的STATTYPE_LOCKED列没有正确的显示结果。 10g中DBA_TAB_STATISTICS的STATTYPE_LOCKED列对分区锁定显示为空:https://yangtingkun.net/?p=1023 上文提到了DBA_TAB_STATISTICS中的STATTYPE_LOCKED列在10g中对于分区锁定统计信息显示为空,那么在10g中有没有办法获取到正确的结果呢: SQL> SELECT TABLE_NAME, partition_name, last_analyzed, stattype_locked 2 FROM dba_tab_statistics 3 WHERE owner = USER 4 AND TABLE_NAME = ‘T_PART’; TABLE_NAME PARTITION_NAME LAST_ANAL STATT —————————— —————————— ——— —– T_PART 16-JUL-12 T_PART P1 T_PART P2 16-JUL-12 T_PART PMAX 16-JUL-12 … Continue reading

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

分区表部分分区不可用导致统计信息收集失效

一个客户碰到的具体需求,分区表中有些分区所在的表空间被OFFLINE,导致在删除统计信息时报错。 下面通过例子来说明这个问题: SQL> CREATE TABLE t_part_read (id NUMBER) 2 partition BY range (id) 3 (partition p1 VALUES less than (10) tablespace ts1, 4 partition p2 VALUES less than (20) tablespace ts2, 5 partition pmax VALUES less than (maxvalue) tablespace users); … Continue reading

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

DROP PARTITION为什么不进回收站

前几天在给公司的员工讲一个案例的提到这个问题。 其实当时提到了这个特点,DROP TABLE会进入回收站,但是DROP PARTITION并不会,因此DROP PARTITION之后,数据无法简单的回复,只能通过逻辑或物理备份的方式来进行数据的回复。 SQL> CREATE TABLE t_drop (id NUMBER); TABLE created. SQL> DROP TABLE t_drop; TABLE dropped. SQL> SELECT object_name, original_name FROM recyclebin; OBJECT_NAME ORIGINAL_NAME —————————— ——————————– BIN$xJhZqpmfWZXgRDzZK0pZWw==$0 T_DROP SQL> CREATE TABLE t_part_drop (id NUMBER) partition BY range … Continue reading

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

HASH分区新增分区对索引状态的影响

一直认为Oracle对于所有分区的操作都是一样的,只有数据的改变才会导致分区状态的失效,没想到HASH分区的实现方式并不相同。 HASH分区表增加新的分区的一点研究:http://yangtingkun.itpub.net/post/468/195510 看一个范围分区SPLIT的例子: SQL> CREATE TABLE T_PART 2 (ID NUMBER, NAME VARCHAR2(30)) 3 PARTITION BY RANGE (ID) 4 (PARTITION P1 VALUES LESS THAN (10), 5 PARTITION PMAX VALUES LESS THAN (MAXVALUE)); TABLE created. SQL> INSERT INTO T_PART 2 SELECT ROWNUM, … Continue reading

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

单个分区索引失效导致绑定变量查询无法使用索引

一个客户碰到的问题,由于分区维护操作,导致个别分区对应的索引处于UNUSABLE状态,最终导致基于绑定变量的查询无法利用索引。 通过一个具体的例子来说明这个问题: SQL> CREATE TABLE t_part 2 (id NUMBER, 3 name varchar2(30)) 4 partition BY range (id) 5 (partition p1 VALUES less than (10), 6 partition p2 VALUES less than (20), 7 partition pmax VALUES less than (maxvalue)); TABLE created. … Continue reading

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

11g数据泵NETWORK_LINK功能增强

11g增强了数据泵的NETWORK_LINK功能,使得远端的导入或导出也支持分区粒度。 在10g的时候,数据泵的NETWORK_LINK只支持表粒度: [orat3@hpserver2 ~]$ expdp test/test network_link=ora10204 dumpfile=tpart.dp logfile=test.log directory=dd TABLES=t_part:p1 Export: Release 10.2.0.4.0 – 64bit Production ON Monday, 4 June, 2012 0:38:31 Copyright (c) 2003, 2007, Oracle. ALL rights reserved. Connected TO: Oracle DATABASE 10g Enterprise Edition Release 10.2.0.4.0 … Continue reading

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

在线索引重建被取消导致大量ORA-600(kghstack_underflow_internal_3)错误

客户在比较繁忙的时刻执行了索引的REBUILD操作,导致大量会话被锁,最终对ONLINE REBUILD操作执行了取消操作,引发了一系列更严重的ORA-600错误。 登录数据库后,发现两个节点上ORACLE_BASE所在目录都已经100%占用。数据库无法正常通过/ AS SYSDBA方式登录。 查询告警日志发现大量的ORA-600和ORA-7445错误: Tue May 08 21:20:26 EAT 2012 Errors IN file /oracle/app/admin/orcl/udump/orcl2_ora_1555.trc: ORA-07445: exception encountered: core dump [0000000000000000] [SIGSEGV] [Invalid permissions FOR mapped object] [0x000000000] [] [] Tue May 08 21:20:27 EAT 2012 Errors IN file … Continue reading

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