使用管道+ ssh 实现 exp imp不产生落地文件

本文介绍如何在Oracle数据库中实现跨主机的数据导入导出操作,且整个过程无需产生临时文件。通过创建管道文件并结合SSH远程连接技术,有效解决了大文件传输的空间占用问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

oracle 使用imp 工具导出的时候需要指定一个导出文件保存路径,同样的。imp导入的时候也需要指定导入的文件,如果exp出来的文件特别大的时候 就会非常占据系统空间。

可以使用 管道 + ssh 实现不同主机之间数据导入导出,不产生落地文件

实验环境
A 主机 ip 地址 192.168.100.176 上面有oracle 实例 SDB1 数据库用户密码 oracle/oracle
B 主机 ip 地址 192.168.100.250 上面有oracle 实例 srcseabed 数据库用户密码seabed/seabed

B 主机上面有 table TEST100 需要导入到A主机 导出的时候不能有落地文件 A主机导入的时候也不能有落地文件

  1. 首先在B 主机上 建立一个管道文件, 用来给exp 导出的时候将数据存到管道里面
    创建管道文件 在/home/oracle 下创建

mknod exppipe p

2.给管道文件授权

chmod 666 expipe

3.在B主机上执行exp导出数据,并指定保存到管道里面

exp oralce/oracle file=/home/oracle/expipe tables=TEST100

4.在A主机上也建立管道文件

创建管道文件 在/home/oracle 下创建
mknod imppipe p

5.给管道文件授权

chmod 666 imppipe

6.在A主机上执行imp导入数据

imp seabed/seabed file=/home/oracle/imppipe tables=TEST100

7.在B主机上使用管道 + ssh 将exp到exppipe 的数据通过ssh 传送到A主机的管道imppipe

dd if=/home/oracle/imppipe | ssh 192.168.100.176 dd of=/home/oracle/imppipe

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值