【发布时间】:2015-09-21 05:17:21
【问题描述】:
我想备份我的本地 Oracle 实例并希望它导入到我的远程服务器上。
我已经搜索了网络,但找不到任何解决方案。我得到的解决方案是:
- 从本地导出并仅导入到本地。
- 从远程导出并仅导入到远程服务器。
但我的要求是:
我的本地 oracle 实例中有一个架构。现在我想把它备份并导入到我的远程服务器上。
以下是我为导出和导入而运行的命令。
本地--
expdp HR/HR@ORCL directory=Export SCHEMAS=MUKESH DUMPFILE=MUKESH.dmp LOGFILE=MUKESH.log
impdp HR/HR@ORCL directory=Export SCHEMAS=MUKESH DUMPFILE=MUKESH.dmp LOGFILE=MUKESH.log
远程--
expdp FASTAdmin/password@db-m3-medium.coplvukvijdo.us-east-1.rds.amazonaws.com:1521/ORCL network_link=to_rds directory=Data_pump_dir dumpfile=MUKESH.dmp logfile=MUKESH.log SCHEMAS='MUKESH'
impdp FASTAdmin/password@db-m3-medium.coplvukvijdo.us-east-1.rds.amazonaws.com:1521/ORCL directory=DATA_PUMP_DIR dumpfile=MUKESH.dmp logfile=MUKESH.log SCHEMAS=MUKESH
注意:请给我仅使用 expdp 和 impdp 命令的解决方案。
【问题讨论】:
-
您是否将本地创建的转储文件复制到远程服务器的DATA_PUMP_DIR目录?
-
oracle 是否提供任何工具可用于将我的本地 .dmp 文件传输到我的远程(来自 AWS 的 RDS for Oralce)服务器。并且可以判断文件是否已传输完成或正在进行中。
-
除了亚马逊文档说要使用的dbms_file_transfer package?您是否尝试按照他们的指示进行操作?
-
他们没有任何工具可以做到这一点。他们向我推荐了我目前正在使用的工具。我什至能够成功传输文件,但是如何使用 java 代码获取传输文件的状态,以便我可以继续将其导入到远程。下面是我正在使用的 oracle 包。 SQL> BEGIN 2 DBMS_FILE_TRANSFER.PUT_FILE(3 source_directory_object => 'SOURCE_DIR', 4 source_file_name => 'test01.dbf', 5 destination_directory_object =>'DEST_DIR', 6 destination_file_name => 'test01.dbf', 7 destination_database => 'remote_db '); 8 结束; 9 /
标签: oracle datapump impdp expdp