WEB开发网
开发学院数据库Oracle 实现Oracle数据库复制 阅读

实现Oracle数据库复制

 2007-05-08 12:08:54 来源:WEB开发网   
核心提示: SQL>exec dbms_job.run(job_number);异常情况的处理:检查复制工作正常否,可以在repadmin 用户下查询user_jobsSQL>select job,this_date,next_date,what, broken from user_job

SQL>exec dbms_job.run(job_number);

异常情况的处理:

检查复制工作正常否,可以在repadmin 用户下查询user_jobs

SQL>select job,this_date,next_date,what, broken from user_jobs;

正常的状态有两种:任务闲——this_date为空,next_date为当前时间后的一个时间值;任务忙——this_date不为空,next_date为当前时间后的一个时间值。异常状态也有两种:任务死锁——next_date为当前时间前的一个时间值;任务死锁——next_date为非常大的一个时间值,例如:4001-01-01。这可能因为网络中断照成的死锁。解除死锁的办法:

$ps –ef|grep orale

找到死锁的刷新快照的进程号ora_snp*,用kill –9 命令删除此进程,然后进入repadmin 用户SQL>操作符下,运行命令:

SQL>exec dbms_job.run(job_number);

说明:job_number 为用select job,this_date,next_date,what from user_jobs;命令查出的job编号。

增加或减少复制组的复制对象:

停止主数据库节点的复制动作,使同步组的状态由正常(normal)改为停顿(quiesced )。用repadmin身份登录China数据库,运行以下命令:

SQL>execute dbms_repcat.suspend_master_activity (gname => 'scott_mg');

在复制组scott_mg里加入数据库对象,保证数据库对象必须有主关键字。

SQL>execute dbms_repcat.create_master_repobject(sname=>'scott',oname=>'emp', type=>'table',use_existing_object=>true,gname=>'scott_mg');

对加入的数据库对象产生复制支持:

SQL>execute dbms_repcat.generate_replication_support('scott','emp','table');

在复制组scott_mg里删除数据库对象:

SQL>execute dbms_repcat.drop_master_repobject ('scott','dept','table');

重新使同步组的状态由停顿(quiesced )改为正常(normal)。

SQL> execute dbms_repcat.resume_master_activity('scott_mg',false);

上一页  2 3 4 5 6 7 

Tags:实现 Oracle 数据库

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