利用DB Link两步搞定Oracle两个数据库间的表同步

简介:

1,在目标机上建立Oracle DB Link:
A,在network/admin/tnsname.ora文件中加入源库的连接信息,如:

AAA =
  (DESCRIPTION 
=
    (ADDRESS 
=  (PROTOCOL  =  TCP)(HOST  =   10.5.1.3 )(PORT  =   1521 ))
    (CONNECT_DATA 
=
      (SERVER 
=  DEDICATED)
      (SERVICE_NAME 
=  AAA)
    )
  )

 

B,在目标机上用sqlplus user/pwd登录。

 

C,用如下命令建立DB Link:

 

create  public  database link AAA_LINK connect to user identified by pwd using  ' AAA ' ;

命令说明:

 

CREATE PUBLIC DATABASE LINK 数据库链接名 CONNECT TO 用户名 IDENTIFIED BY 密码 USING ‘本地配置的数据的实例名’;

 

如果建立成功,会提示:Database link created.

查看状态

select status from dba_objects where object_type='DATABASE LINK';

 

2,使用如下脚本,即可同步数据表:

 

# !/bin/sh
# to sync table A to BBB database from AAA database

sqlplus user / pwd @BBB   << EOF      # 这里是BBB上的数据库和密码还有实例名,请按照实际情况修改
truncate  table A;
insert into A 
select   *  from b_schema . A @AAA_LINK # 这里是指向要同步的来源表,表名必须是<表所有者>.<表名>@<dblink name>
commit;

 

PS:需要DB支持Advanced replication功能,是否支持,可用如下SQL查看:

 

select   *   from  v$ option   where  PARAMETER = ' Advanced replication ' ;

如果是返回True就表示支持。




本文转自 vfast_chenxy 51CTO博客,原文链接:http://blog.51cto.com/chenxy/838432,如需转载请自行联系原作者
目录
相关文章
|
2天前
|
Oracle 安全 关系型数据库
|
2天前
|
存储 Oracle 关系型数据库
|
1天前
|
SQL Oracle 关系型数据库
关系型数据库Oracle设置 RMAN 环境:
【7月更文挑战第25天】
6 2
|
2天前
|
存储 Oracle 关系型数据库
关系型数据库Oracle运行RMAN脚本
【7月更文挑战第23天】
10 4
|
2天前
|
监控 Oracle 算法
|
2天前
|
Oracle 关系型数据库 数据库
关系型数据库Oracle编写RMAN脚本
【7月更文挑战第23天】
11 2
|
4天前
|
Oracle 关系型数据库 数据库
关系型数据库Oracle执行RMAN脚本
【7月更文挑战第22天】
14 2
|
5天前
|
存储 监控 Oracle
关系型数据库Oracle备份策略建议
【7月更文挑战第21天】
16 6
|
5天前
|
存储 Oracle 关系型数据库
|
5天前
|
监控 Oracle 关系型数据库
关系型数据库Oracle恢复测试
【7月更文挑战第20天】
18 7

推荐镜像

更多