MySQL, Oracle, Linux, 软件架构及大数据技术知识分享平台

网站首页 > 数据库 / 正文

ORA-26563--删除物化视图日志就可以了?其实还有坑

2024-11-26 17:14 huorong 数据库 7 ℃ 0 评论

概述

rename的时候如果碰到这个表有物化视图会提示ORA-26563错误,如果按网上解决办法是drop materialized view log on TBL_COMM_COMMONTICKET; 那重命名后会有影响吗?会不会不产生物化视图日志?网上很多只是告诉你删除物化视图日志就可以了,但是如果删除后是会影响物化视图的,所以网上的内容还是要保持一份怀疑,最好自己测试一下。


报错截图


思路

如果在重命名Oracle表的时候出现ORA-26563: 不允许重命名此表错误,试着将表上的物化视图日志drop就可以了。


1、查看物化视图日志


2、查看是否存在对象


3、保存物化视图对象定义

-- Create table
create table MLOG$xx
(
 M_ROW$ VARCHAR2(255),
 SNAPTIME$ DATE,
 DMLTYPE$ VARCHAR2(1),
 OLD_NEW$ VARCHAR2(1),
 CHANGE_VECTOR$ RAW(255),
 XID$ NUMBER
)
tablespace DATA
 pctfree 10
 initrans 1
 maxtrans 255
 storage
 (
 initial 1
 next 1
 minextents 1
 maxextents unlimited
 pctincrease 0
 );
-- Add comments to the table 
comment on table MLOG$xxx
 is 'snapshot log for master table GLOGOWNER.xxx';

4、删除物化视图日志并重命名表


5、重建物化视图日志

记得重建回来!


6、刷新物化视图

select * from user_objects where object_type='MATERIALIZED VIEW' and object_name like '%FSL_TRUNK%';
 exec dbms_mview.refresh('MV_OTM_FSL_TRUNKSHIPMENT_DE','C');

觉得有用的朋友多帮忙转发哦!后面会分享更多devops和DBA方面的内容,感兴趣的朋友可以关注下~

Tags:oracle 删除 表

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言