exp/imp利用管道直接导出导入,文件不落地;
mknod /backup/dmp/pipe p
exp \'/ as sysdba\' file=/backup/dmp/pipe log=expscott.log owner=scott rows=y indexes=n compress=n direct=n recordlength=65536 buffer=52488000 feedback=100000;
imp \'/ as sysdba\' file=/backup/dmp/pipe log=impscott.log fromuser=scott touser=scott1 buffer=52488000
rm /backup/dmp/pipe
查看管道内容
dd if=/backup/dmp/expscott of=/dev/null
可以观察到,执行exp命令后,没有输出,管道无内容;在另一个窗口执行imp命令后,exp开始输出;
通过管道导出数据压缩,然后解压后导入;
1.通过mknod -p建立管道
2.通过exp和gzip导出数据到建立的管道并压缩 执行gzip之前没有文件产生;
3.导出成功完成之后删除建立的管道
mknod /backup/dmp/expscott p
exp \'/ as sysdba\' file=/backup/dmp/expscott direct=n recordlength=65536 buffer=52488000 feedback=100000 log=expscott.log owner=scott &
gzip < /backup/dmp/expscott > /backup/dmp/expscott.dmp.gz
rm -rf /backup/dmp/expscott
通过管道导入生成的文件
1.建立管道
2.导入生成的压缩文件
这样就导入成功,之后删除管道
3.删除管道
mknod /backup/dmp/impscott p
imp \'/ as sysdba\' file=/backup/dmp/impscott log=impscott1.log fromuser=scott touser=scott1 &
gunzip < /backup/dmp/expscott.dmp.gz > /backup/dmp/impscott
rm /backup/dmp/impscott
0