您的位置:首页 > 其它

修复破坏的DUAL表

2018-02-24 10:37 309 查看
1.没有重新启库
建表
create table sys.dual(
dummy varchar2(1)
)tablespace system;

授权
grant select on sys.dual to public with grant option;

插入关键数据
insert into dual values('X');

善后
查看相关SYS下的失效对象,并重新编译
select object_name,owner,object_type from dba_objects where status='INVALID'

@?/rdbms/admin/utlrp.sql

2.重新起库
设置参数
replication_dependency_tracking 为false
alter system set replication_dependency_tracking=false scope=spfile;

建表
create table sys.dual(
dummy varchar2(1)
)tablespace system;

授权
grant select on sys.dual to public with grant option;

插入关键数据
insert into dual values('X');

设置参数
alter system set replication_dependency_tracking=true scope=spfile;

善后
查看相关SYS下的失效对象,并重新编译
select object_name,owner,object_type from dba_objects where status='INVALID'

@?/rdbms/admin/utlrp.sql
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  dual 恢复