今天执行转分区表操作时,使用在线重定义,去吃个饭的功夫,表空间满了,报错如下:
天真的我以为,添加表空间数据文件后,再次执行就可以了!结果,报错:
大概意思就是已经被重定义了,无法再次重定义,怎么破呢?
✅ 解决方案:
--查询表对应的物化视图 select mview_name from user_mviews; --删除物化视图的日志 drop materialized view log on T; --终止之前的重定义 exec DBMS_REDEFINITION.abort_redef_table('LUCIFER','T','T_PAR'); --再次进行重定义 EXEC DBMS_REDEFINITION.START_REDEF_TABLE('LUCIFER','T','T_PAR',NULL,DBMS_REDEFINITION.CONS_USE_ROWID);
上述中,T
代表原表,T_PAR
代表中间分区表,LUCIFER
代表用户!