ORACLE使用DBLINK导入导出数据

场景:

ORACLE数据库A:172.18.169.81:1521/orcl

ORACLE数据库B:127.0.0.1:1521/orcl

要将数据库A的所有数据导入到数据库B。

由于数据量极大,所以直接exp太慢,不能用

懒,不愿意写expdp,所以使用DBLINK进行导入。

过程:

1、在数据库B新建对应的用户、表空间

2、使用新建好的用户登录plsql,在左边列表栏里面找到database links,右键,点新建

3、配置好DBLINK之后,就可以使用select * from t_xxxx@DBLINK名称 来查询了,update/insert/delete也是一样的

4、利用DBLINK导入的思路就是利用create table xxx as select * from xxx@DBLINK名称 来实现的,那么要把每一张表的create语句都写好,表很多,自然是不能一句一句写的,那么就是用select table_name from dba_tables@DBLINK名称 where owner='A库的用户名'; 查出这个用户下的所有表的表名

5、有了表明,就可以利用语句进行拼凑,拼出所需要的语句:select 'create table '||table_name||'  as select * from '||table_name||'@DBLINK名称;'  from dba_tables@DBLINK名称 where owner='A库的用户名';

6、将拼凑出来的sql全部复制一下,放在sql执行窗口里面运行一下就可以了。
 

如果是同一个数据库实例,那就不用建dblink了,直接用用户名.表名即可

select 'create table '||table_name||' as select * from A库用户名.'||table_name||';' from dba_tables where owner='A库用户名'

  • 5
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Y飞羽Y

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值