首页 ┆ 网站地图 ┆ 在线留言 ┆ 游戏资讯 ┆ 资源下载 
设为首页
加入收藏
联系我们
热门关键字: .net应用  操作系统  Dreamweaver  WinRAR  网络推广
高级搜索
您当前的位置: 主页>数据库>ORACLE>ORACLE 10G分区表维护:全局索引和物化视图
ORACLE 10G分区表维护:全局索引和物化视图
来源: 发布时间:2008-04-21 发布人: 浏览: 人次   字体: [ ]  
ORACLE 10G R2
1.全局索引
SQL> alter table analyse_content truncate subpartition DATA0712_DEYANG;
Table truncated
truncate分区后,修改或者插入数据报错:
ORA-01502: index 'phs.pk' or partition of such index is in unusable state
这个时候只能rebuild index
SQL> alter index phs.pk rebuild;
Index altered
执行以后恢复正常,或者使用如下语句:
SQL> alter table analyse_content truncate subpartition DATA0712_ZIGONG UPDATE
GLOBAL INDEXES;
Table truncated
这样它会自动恢复索引。
2.物化视图
对于已经建有fast refresh view的分区表来说,truncate和drop分区/表会导致物化视图出错。
SQL> alter table analyse_content drop subpartition DATA0712_MIANYANG;
Table altered
SQL> alter table analyse_content truncate subpartition DATA0712_LUZHOU;

Table truncated
再次查询物化视图,这个两个分区的数据仍然存在,说明物化视图不能对这种DDL语句进行更新。
尝试在基础表插入数据,报错:
ORA-32313: REFRESH FAST of " " unsupported after PMOPs
这时候必须手工刷新MV
SQL> exec dbms_mview.refresh('mv_analyse_content','f');
begin dbms_mview.refresh('mv_analyse_content','f'); end;
ORA-32313: PMOP 之后不支持 "PHS"."MV_ANALYSE_CONTENT" 的 REFRESH FAST
ORA-06512: 在 "SYS.DBMS_SNAPSHOT", line 2255
ORA-06512: 在 "SYS.DBMS_SNAPSHOT", line 2461
ORA-06512: 在 "SYS.DBMS_SNAPSHOT", line 2430
ORA-06512: 在 line 1

看来快速刷新'f'是不行,还是得完全刷新'c'
SQL> exec dbms_mview.refresh('mv_analyse_content','c');
PL/SQL procedure successfully completed
执行完后,MV里面的数据恢复正常,基表不再报错。
实际10g里面,truncate分区后,某些物化视图可以执行fast refresh,具体有很多限制,
要查询doc,反正select * from table这种视图肯定可以'f',不过却没有什么意义。
但是这样有一个问题,对于海量数据库,如果不能使用DROP分区,则delete相当慢。
如果使用了,又会导致完全刷新MV,同样慢。
可能要考虑针对分区来建MV了。
对于分区表 已经相关索引,快照的维护,建议还是参考Oracle的DOC,在admin guide和
dataware house guide里有非常完善描述。虽然没有涉及internal,应用完全足够了。

↓下一篇:如何完全清除Oracle
相 关 文 章   发布商链接
·如何完全清除Oracle
·Oracle服务费是如何计算的,以Oracle1...
·实例讲解对oracle进行简单树递归查询
·Oracle导致CPU进程100%原因及其对应...
·解析Oracle中限制返回结果集的大小
·用Oracle 10g列值掩码技术隐藏敏感数...
·Oracle巧取指定记录以及巧用外关联...
·ORACLE使用中的常见、实用的问题技巧
·oracle数据库导入Excel数据方法
·导入、导出oracle数据库与复制表、清...
 §最新评论:(评论内容只代表网友观点,与本站立场无关!)
网名: 验证码:  【所有评论】【↑返回顶部
评 分: 12 345
评论内容:(不能超过500字,请自觉遵守互联网相关政策法规。[按 Ctrl+Enter 可直接提交]
注意:请勿在本站发布政治话题、色情及违反法律的内容。
IT知道网 声明:刊登此文章是为了传递更多信息,文章内容仅供参考,转载请注明出处。
推 荐 文 章
·Oracle导致CPU进程100%原因及
·实例讲解对oracle进行简单树...
·Oracle服务费是如何计算的,以...
·如何完全清除Oracle
·怎样有效提高Oracle 10G增量...
·Oracle数据库的四种启动方式...
·利用函数实现oracle行列转换
·使用type类型和存储过程来完...
·oracle9i客户端如何连接oracl...
·解决ORACLE被锁定的资源两法
·oracle中分割字符串,并求最...
·详细讲解Oracle数据库灾难防...
·oracle分析函数row_number的...
·如何彻底删除安装Oracle留下...
·Oracle sql性能优化调整规则...
热 门 文 章
·Oracle内连接、外连接、右外...
·ORACLE使用中的常见、实用的...
·导入、导出oracle数据库与复...
·oracle9i客户端如何连接oracl...
·oracle分析函数row_number的...
·几个方面入手oracle性能优化...
·oracle中分割字符串,并求最...
·利用函数实现oracle行列转换
·Oracle sql性能优化调整规则...
·Oracle巧取指定记录以及巧用...
·使用type类型和存储过程来完...
·oracle数据库导入Excel数据方...
·如何彻底删除安装Oracle留下...
·解决ORACLE被锁定的资源两法
·实例讲解对oracle进行简单树...
网站首页 - 关于本站 - 加入收藏 - 网站地图 - 友情连接 - 在线留言 - 联系我们 - 返回顶部
Copyright © 2007 IT知道网.[冀ICP备07026896号]. All Rights Reserved .