IMPDP

本文详细介绍了使用IMPDP工具进行跨版本数据库数据导入的方法,包括如何将低版本数据导入高版本,以及高版本数据导入低版本所需参数。文中还提供了具体的IMPDP命令示例,涵盖了目录对象创建、用户和表空间映射、版本指定等关键操作。

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

IMPDP

只能把低版本中的数据导入高版本中
如果高版本导入低版本的话 需要加一个参数
version=11.2.0.4.0
hdsoaware_test

create directory BACKUP_DIR as ‘/oracle/oradata/hdsoaware/backup_dir’

导入impdp
[oracle@localhost ~]$ impdp ‘sys/sys as sysdba’ parallel=2 directory=BACKUP_DIR dumpfile=SOAWARE_BAK.DMP remap_schema=SOAWARE:hdsoaware_test remap_tablespace=SOAWARE:hdsoaware_test;

impdp soaware_test/soaware_test parallel=2 directory=BACKUP_DIR dumpfile=SOAWARE_BAK.DMP schemas=fmis1500

impdp ‘sys/sys@soawaret as sysdba’ directory=BACKUP_DIR dumpfile=SOAWARE_BAK.DMP PARALLEL=2 schemas=soaware_test

C:\Users\Administrator\Desktop\2015-08-10

TABLE_EXISTS_ACTION Action to take if imported object already exists.
Valid keywords: (SKIP), APPEND, REPLACE and TRUNCATE.
table_exists_action=replace

full=y

#导入时更换用户(原用户名:新用户名)
remap_schema=scott:b
#导入时更换表空间(原表空间:新表空间)
remap_tablespace=users:b;

impdp ‘’/ as sysdba’’ parallel=2 directory=aa dumpfile=scott01.dmp,scott02.dmp remap_schema=scott:b remap_tablespace=users:b version=11.1.0.6.0;

impdp system/sys parallel=3 directory=backup_dir dumpfile=CWDB_BAK.dmp logfile=IMP_CWDB.log table_exists_action=replace EXCLUDE=TABLE_STATISTICS

db_linke
create public database link <DBLink名称> connect to <被连接库的用户名> identified by <被连接库的密码> using ‘tnsnames.ora中定义的’;

B库
create public database link toa connect to system identified by system using ‘orcl’;

drop public database link toa;

tnsnames.ora
orcl =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.10.10.77)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)

impdp XXXX/XXXX NETWORK_LINK=XXXXX FULL=Y

impdp '/ as sysdba ’ directory=DATA_PUMP_DIR network_link=gomftst logfile=imp_mftst.log version=10.2.0.3
parallel=2 schemas=‘goex_admin,fix_admin’

CREATE DATABASE LINK dmp_link CONNECT TO rman IDENTIFIED BY rman USING ‘catalog’;

四、在目标数据库上创建directory对象
以oracle用户登录目标数据库
1、创建一个目录,假设为 /oracle/dmp,并保证这个目录oracle用户可读写
2、以sysdba身份登录数据库,创建directory对象,并给这个对象赋予读写权限
3、然后登录数据库,执行如下语句:
复制代码 代码如下:

$ sqlplus / as sysdba
create or replace directory BACKUP_DIR as ‘D:\Backup’;
grant read,write on directory BACKUP_DIR to public;
sql> exit;

五、在目标数据库上执行impdp命令,导入数据
impdp rman/rman/orcl network_link=dmp_link remp_schema=source_schema:target:shcema remap_tablespace=source_tablespace:target:tablespace

总结:从以上经历可以看出,成功地通过网络导入数据库(不生成DMP文件)需要注意以下内容:
1、 在B服务器数据库创建到A服务器数据库的public db link;
2、 在system下创建Directory,并赋予其读写权限,同时赋予SYS.UTL_FILE的执行权限;
3、 执行脚本参数位置,DIRECTORY=TEMP_A_USER1必须放在前面,parallel=8不能放在最后,是不是Oracle bug没确定过。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值