论坛首页 综合技术论坛

Oracle 用dblink 跨库导数据

浏览 11702 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2011-08-02  

一般都会用imp exp 备份和导入数据库  但是有些时候 需要比较灵活的从两个数据库之间取数据 我这里用到的是oralc的dblink方式。

 

首先监听器tnsnames.ora这个文件能连接到远程要创建dblink的数据库。


-- 创建dblink   MANAGER为远程数据库的用户名 password 为远程数据库的密码, orcl为监听器连好的链接名称

 

create database link DDD.REGRESS.RDBMS.DEV.US.ORACLE.COM
  connect to MANAGER  identified by  password   
  using 'orcl';
 

 

这样就可以连接到 orcl数据库 灵活的取每一张表的数据了

 

 

--两个数据库都存在 tb_demo表  这是本表插入
--查询数据 sql和本地一样了  只是后面加个@DDD.REGRESS.RDBMS.DEV.US.ORACLE.COM  就等于是dblink连好的远程数据库了

INSERT INTO tb_demo
              SELECT * FROM tb_demo@DDD.REGRESS.RDBMS.DEV.US.ORACLE.COM
              where iyear=2011
              and imonth=8  and flag=0
 
   发表时间:2011-08-12  
lob字段无法通过dblink,9i下CTAS出来timestamp有问题。
0 请登录后投票
   发表时间:2011-08-12  
zlowly 写道
lob字段无法通过dblink,9i下CTAS出来timestamp有问题。

lob字段可以,但是需要相同表空间名。
0 请登录后投票
   发表时间:2011-08-15  
oracle 可以用 copy from 在两个不同的实例间拷贝!
不需要建立 dblink
0 请登录后投票
   发表时间:2011-08-15  
wmjie 写道
oracle 可以用 copy from 在两个不同的实例间拷贝!
不需要建立 dblink


恩  做了几年开发 从一开始什么都不懂 很多东西都是积累的 每个人都多分享一点自己的经验
0 请登录后投票
   发表时间:2011-08-18  
BBony 写道
zlowly 写道
lob字段无法通过dblink,9i下CTAS出来timestamp有问题。

lob字段可以,但是需要相同表空间名。

我以前用dblink导数据的时候也遇到lob字段无法导出的情况,结果用了全局性的零时表,先导入到零时表,再导入本库
0 请登录后投票
论坛首页 综合技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics