ORA-10636: ROW MOVEMENT is not enabled ORACLE 报错 故障修复 远程处理

文档解释

ORA-10636: ROW MOVEMENT is not enabled

Cause: To shrink a data segment, row movement must be enabled.

Action: Enable row movement and reissue this command.

ORA-10636: ROW MOVEMENT 错误提示表示表上没有启用 ROW MOVEMENT 功能。

ROW MOVEMENT 功能是 Oracle Database 的一个增强功能,可以在表中,移动或将行移到另一个表。此外还可以开启表的 ROWID 优化,使用者可以得到更为稳定的 ROWID,从而减少表空间的占用和无用的索引死条。

正常处理方法及步骤

1.确定注册为容器数据库的控制文件已经定义了可支持 ROW MOVEMENT 功能的移动表

2.确定容器数据库修改属性 ENABLE ROW MOVEMENT

3.使用 ALTER TABLE 指令开启 ROW MOVEMENT 功能

4.通过执行 ALTER INDEX with REBUILD 指令重建任何影响到 ROW MOVEMENT 功能的索引

5.在表上执行定期的维护,比如回收碎片、收缩空间等

1.确认被报错的表是否具有 ROW MOVEMENT 功能

SQL> SELECT TABLE_NAME,ROW_MOVEMENT FROM USER_TABLES;

2.若表不具有 ROW MOVEMENT 功能,则执行下面的指令启用

SQL> ALTER TABLE

ENABLE ROW MOVEMENT;

3.重建索引

SQL> ALTER INDEX REBUILD;

4.查看表的 ROW MOVEMENT 功能状态

SQL> SELECT TABLE_NAME,ROW_MOVEMENT FROM USER_TABLES;


数据运维技术 » ORA-10636: ROW MOVEMENT is not enabled ORACLE 报错 故障修复 远程处理