我正在编写一些数据传输例程,并将exp
和imp
合并到工作流程中。这两个参数都有一个FILE=
参数来指定数据文件。
有没有办法指定stdin和stdout?我很想做这样的事情:
exp ... | ssh foo imp ...
现在我很想尝试用mkfifo解决这个问题,但这似乎有点笨拙。
答案 0 :(得分:6)
不完全是stdout / stdin,但可以导出到unix管道并从中导入。这种技术可以适合您的工作流程吗? Find out more.
顺便提一下,Oracle的数据泵不能与unix管道一起使用。
答案 1 :(得分:-1)
您可以使用节点文件 (man mknod) 作为缓冲文件而不是管道 (|)。
示例:
在应该创建转储的目标主机 (dhost) 上,执行:
ssh shost "cat /ORACLE_BACKUP_PATH/NAME_OF_THE_NODE_FILE" > FILE_NAME_ON_THE_DESTINATION_HOST
在应该创建备份的源主机(shost)上,执行:
expdp system/..... full=y directory=ORACLE_BACKUP_PATH DUMPFILE=NAME_OF_THE_NODE_FILE
祝你好运 标记