是不是sys用户上不支持闪回?我做了三个实验,证明了:
1. Sys用户不能闪回本用户下默认表空间创建的表,提示ORA-08185: 用户 SYS 不支持闪回。
2. Sys用户不能闪回本用户建在其他表空间的表。
sys@ORCL> drop table t;
表已删除。
sys@ORCL> create table t tablespace ts_test_1 as select * from all_users;
表已创建。
sys@ORCL> variable SCN number
sys@ORCL> exec :scn := dbms_flashback.get_system_change_number
PL/SQL 过程已成功完成。
sys@ORCL> delete from t
2 /
已删除29行。
sys@ORCL> ALTER TABLE T ENABLE ROW MOVEMENT;
表已更改。
sys@ORCL> FLASHBACK TABLE T TO SCN:scn;
FLASHBACK TABLE T TO SCN:scn
*
第 1 行出现错误:
ORA-08185: 用户 SYS 不支持闪回
3. Sys用户可以闪回其他用户建立的表
sys@ORCL> flashback table t to SCN:scn;
flashback table t to SCN:scn
*
第 1 行出现错误:
ORA-08185: 用户 SYS 不支持闪回
sys@ORCL> flashback table songge.t to SCN:scn;
闪回完成。