前言:
现时你们对“可更新视图oracle”大概比较看重,姐妹们都想要了解一些“可更新视图oracle”的相关资讯。那么小编也在网上搜集了一些有关“可更新视图oracle””的相关资讯,希望朋友们能喜欢,大家快快来了解一下吧!概述
由于源库上的表rename切换时重建了物化视图日志,而物化视图完全刷新耗时过久,这里采取删除后重建方式。那么,只是按网上一样drop后重建就可以了吗?那你就很有可能踏坑了...
1、查看物化视图定义
select dbms_metadata.get_ddl('MATERIALIZED_VIEW','<TAB_NAME>','<Schema_name>') from dual;
2、查看物化视图上的索引
--查看物化视图上的索引SELECT * FROM DBA_INDEXES WHERE TABLE_NAME='物化视图名字';--查看索引定义select dbms_metadata.get_ddl('INDEX','INDEX_NAME','INDEX_OWNER') from dual;
3、重建物化表的日志表(在源库执行)
--删除物化视图日志DROP MATERIALIZED VIEW LOG ON 表名;--为将要创建物化视图的表添加带主键的日志表CREATE MATERIALIZED VIEW LOG ON 表名 WITH PRIMARY KEY;
4、删除物化视图
DROP MATERIALIZED VIEW 表名;
5、创建物化视图和索引
5.1、创建物化视图
这里就用到前面事先查找的定义了
5.2、创建索引(主键索引会自动创建,不需要再创建)
这一步是很有可能被漏的,要谨慎!
CREATE INDEX ....
6、验证是否创建成功
SELECT * FROM 物化视图表名;
7、查询
这里查看物化视图刷新状态信息和物化视图日志
SELECT MVIEW_NAME, LAST_REFRESH_DATE, STALENESS FROM USER_MVIEWS;SELECT NAME, LAST_REFRESH FROM USER_MVIEW_REFRESH_TIMES; SELECT * FROM MLOG$_xx;
觉得有用的朋友多帮忙转发哦!后面会分享更多devops和DBA方面的内容,感兴趣的朋友可以关注下~
版权声明:
本站文章均来自互联网搜集,如有侵犯您的权益,请联系我们删除,谢谢。
标签: #可更新视图oracle