Oracle跨数据库操作

实现:

远程数据库1中的表1数据写入远程数据库2中的表2


第一步:创建服务名

需要安装Oracle服务器(即本地可以安装数据库红色部分很重要

方法一:

修改Oracle安装目录下的.\product\10.2.0\db_1\network\ADMIN\tnsnames.ora文件

方法二:

使用Oracle自带的Net Manager工具(以此方法为例)


选择Oracle Net配置-本地-服务命名,单击+号,创建服务名


输入远程Oracle数据库对应的服务名


选择TCP/IP协议


输入远程Oracle数据库的IP地址和端口号


输入远程数据库的实例名


创建完成后,点击文件,进行保存

此处需要创建两个服务名:

远程Oracle数据库1,对应服务名为:MYORACLE1

远程Oracle数据库2,对应服务名为:MYORACLE2


第二步:创建database link

使用sysdba权限登录本地数据库(登录名可以使用system)

使用如下命令来创建database link

create public database link databaselink名称
connect to 登录名1 identified by 密码1
using '第一步中创建的服务名';
此处需要创建两个database link:

create public database link MYDBLINK1
connect to 登录名1 identified by 密码1
using 'MYORACLE1';
create public database link MYDBLINK2
connect to 登录名2 identified by 密码2
using 'MYORACLE2';

第三步:执行跨数据库操作的Sql语句

注:需要在本地数据库中执行,原因:database link是在本地数据库中创建的。

实例SQL:

insert into TABLE1@MYDBLINK1 select * from TABLE2@MYDBLINK2 where rownum<=10;


【备注】:

--删除database link

Dropdatabaselink MYDBLINK1;

--查看database link

select*fromuser_db_links;--用户

select*fromdba_db_links; --dba

select*fromv$dblink;     --当前

--为远程Oracle服务器中的表创建同义词,同义词当做本地表来使用

createsynonym Ora1Table1 forTABLE1@MYDBLINK1;

--删除同义词

dropsynonymOra1Table1;




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值