WEB开发网
开发学院数据库Oracle Qracle高级复制维护中要注意的方面 阅读

Qracle高级复制维护中要注意的方面

 2007-05-11 12:21:34 来源:WEB开发网   
核心提示: 6、执行任何ADMIN REQUEST(对复制环境的管理命令)前,都要保证此时没有堆积的DEFERRED TRANS,Qracle高级复制维护中要注意的方面(2),7、执行任何ADMIN REQUEST,必须一步一步执行,可能还需要重启数据库,最后再恢复JOB的状态和其他涉及的复制环境状态

6、执行任何ADMIN REQUEST(对复制环境的管理命令)前,都要保证此时没有堆积的DEFERRED TRANS。

7、执行任何ADMIN REQUEST,必须一步一步执行。因为ADMIN REQUEST的工作原理,是用一个REPCATLOG表保存ADMIN REQUEST语句,执行完一条消失一条,后面的再继续执行。如果前面一条没执行完,后面的ADMIN REQUEST就无法执行,而REPCATLOG表如果不为空,复制组就无法恢复为NORMAL。因此每次发出ADMIN REQUEST后,都要检查REPCATLOG表,当所有节点上的REPCATLOG表都为空后,才能发出下一条命令。

8、如果发现REPCATLOG表中有无法执行的命令,可以重新APPLY或PURGE掉再重新发出命令执行。如果只是某一个节点上有遗留命令,可以在该节点上多APPLY几次执行。

9、如果发出命令后一直没有响应,而ADMIN REQUEST又无法PURGE掉,现象类似死锁。可以试着BROKEN掉该ADMIN REQUEST对应的JOB,重新刷新命令。如果命令能继续执行,恢复JOB的状态。如果还不行,从V$SESSION 和V$LOCK中查出死锁,用ALTER SYSTEM KILL SESSION 杀掉死锁的进程,如果还是杀不掉。就需要查出类型为'RQ'的分布式死锁,用SID再从V$PROCESS、V$BGPROCESS查出对应的后台进程,从操作系统级杀掉后台进程的方式来解锁,可能还需要重启数据库。最后再恢复JOB的状态和其他涉及的复制环境状态。

10、可以通过REPLICATION MANAGER或相关系统表查询复制环境情况,以REPADMIN用户登陆:

查看复制组和复制对象:

  select gname,status from dba_repgroup;
  --其中gname 即为复制组名,status 表示状态
  select gname,oname,status from dba_repobject
  where type =’TABLE’ and oname =
  ‘table_name’;

Tags:Qracle 高级 复制

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接