最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

【数据泵】11G数据迁移10G数据库

来源:动视网 责编:小OO 时间:2025-09-29 03:01:10
文档

【数据泵】11G数据迁移10G数据库

环境介绍源环境:WindowsServer2008X+Oracle11G目标环境:Linux5.4+Oracle10G(10.2.0.4.0)Rac迁移方式由于由上至下迁移,采用exp/imp无法正常导入;故使用expdp/impdp(数据泵)迁移迁移步骤源端:连接cms数据库服务器192.168.253.113administrator/******打开dos窗口通过expdp命令导出dmp文件,命令如下:Expdpcms/******@orcldirectory=DATA
推荐度:
导读环境介绍源环境:WindowsServer2008X+Oracle11G目标环境:Linux5.4+Oracle10G(10.2.0.4.0)Rac迁移方式由于由上至下迁移,采用exp/imp无法正常导入;故使用expdp/impdp(数据泵)迁移迁移步骤源端:连接cms数据库服务器192.168.253.113administrator/******打开dos窗口通过expdp命令导出dmp文件,命令如下:Expdpcms/******@orcldirectory=DATA
环境介绍

源环境:Windows Server 2008  X + Oracle 11G 

目标环境:Linux 5.4 + Oracle 10G(10.2.0.4.0) Rac

迁移方式

由于由上至下迁移,采用exp/imp无法正常导入;故使用expdp/impdp(数据泵)迁移

迁移步骤

源端:

连接cms数据库服务器 192.168.253.113  administrator/******

打开dos窗口 通过expdp命令导出dmp文件,命令如下:

Expdp cms/******@orcl directory=DATA_PUMP_DIR dumpfile=cms.dmp schemas=cms logfile=cms.log version=10.2.0.3.0;

参数说明:expdp 用户名/密码@实例名 directory=【directory_object】虚拟目录对象(DATA_PUMP_DIR系统安装后默认的目录 可用system登陆通过select * FROM dba_directories;查看) dumpfile=导出文件的名 schemas=方案名 logfile=日志文件 version=指定版本导出

将导出的.dmp,.log 文件拷贝到目标环境中(路径是DATA_PUMP_DIR对应的目录)

Plsql system连接数据库 创建cms用户 创建cms表空间 授权cms用户

Ssh连接目标服务器 切换oracle 用户 执行命令:

Impdp system/******@other directory= DATA_PUMP_DIR dumpfile=cms.dmp schemas=cms logfile=cms.log

参数同expdp

一次艰辛的数据导入导出:

环境介绍

源环境:Windows Server 2008  X + Oracle 11G 

目标环境:Linux 5.4 + Oracle 10G(10.2.0.4.0) Rac

迁移方式

由于由上至下迁移,采用exp/imp无法正常导入;故使用expdp/impdp(数据泵)迁移

要求

目标表空间,用户按照源数据格式创建好

导出文件

●SELECT CURRENT_SCN FROM V$DATABASE;  

●expdp system/oracle@orcl DIRECTORY=DATA_PUMP_DIR DUMPFILE=FALABELLA_AR_20111214.DMP SCHEMAS=FALABELLA_AR_CORE,FALABELLA_AR_CATA,FALABELLA_AR_CATB,FALABELLA_AR_PUB logfile=FALABELLA_AR_expdp_20111214.log status=10 parallel=1 CONTENT=ALL flashback_scn=612654934  

SELECT CURRENT_SCN FROM V$DATABASE;

expdp system/oracle@orcl DIRECTORY=DATA_PUMP_DIR DUMPFILE=FALABELLA_AR_20111214.DMP SCHEMAS=FALABELLA_AR_CORE,FALABELLA_AR_CATA,FALABELLA_AR_CATB,FALABELLA_AR_PUB logfile=FALABELLA_AR_expdp_20111214.log status=10 parallel=1 CONTENT=ALL flashback_scn=612654934

压缩dmp文件 

[sql] view plaincopyprint?

1.gzip -9 FALABELLA_AR_20111214.DMP   

gzip -9 FALABELLA_AR_20111214.DMP 

三、上传DUMP文件到目标库并解压。

[sql] view plaincopyprint?

1.gzip -d  FALABELLA_AR_20111214.DMP   

gzip -d  FALABELLA_AR_20111214.DMP 

四、准备目标库上原有用户对象

[sql] view plaincopyprint?

1.CREATE TABLESPACE TBS_FALABELLA_AR LOGGING DATAFILE '/u01/oradata/oracle/TBS_FALABELLA_AR01.DBF'   

2.  SIZE 1024M AUTOEXTEND ON NEXT M MAXSIZE 4096M  

3.  EXTENT MANAGEMENT LOCAL  

4./  

5.  

6.DROP USER FALABELLA_AR_CORE CASCADE;  

7.DROP USER FALABELLA_AR_CATA CASCADE;  

8.DROP USER FALABELLA_AR_CATB CASCADE;  

9.DROP USER FALABELLA_AR_PUB CASCADE;  

10.  

11.CREATE USER FALABELLA_AR_CORE IDENTIFIED BY FALABELLA_AR_CORE QUOTA UNLIMITED ON TBS_FALABELLA_AR  

12.DEFAULT TABLESPACE TBS_FALABELLA_AR  

13.TEMPORARY TABLESPACE TEMP;  

14.  

15.GRANT CONNECT, RESOURCE TO FALABELLA_AR_CORE;  

16.  

17.CREATE USER FALABELLA_AR_CATA IDENTIFIED BY FALABELLA_AR_CATA QUOTA UNLIMITED ON TBS_FALABELLA_AR  

18.DEFAULT TABLESPACE TBS_FALABELLA_AR  

19.TEMPORARY TABLESPACE TEMP;  

20.  

21.GRANT CONNECT, RESOURCE TO FALABELLA_AR_CATA;  

22.  

23.CREATE USER FALABELLA_AR_CATB IDENTIFIED BY FALABELLA_AR_CATB QUOTA UNLIMITED ON TBS_FALABELLA_AR  

24.DEFAULT TABLESPACE TBS_FALABELLA_AR  

25.TEMPORARY TABLESPACE TEMP;  

26.  

27.GRANT CONNECT, RESOURCE TO FALABELLA_AR_CATB;  

28.  

29.CREATE USER FALABELLA_AR_PUB IDENTIFIED BY FALABELLA_AR_PUB QUOTA UNLIMITED ON TBS_FALABELLA_AR  

30.DEFAULT TABLESPACE TBS_FALABELLA_AR  

31.TEMPORARY TABLESPACE TEMP;  

32.  

33.GRANT CONNECT, RESOURCE TO FALABELLA_AR_PUB; 

导入 

[sql] view plaincopyprint?

1.--第一次导入   

2.impdp system/oracle@oracle DIRECTORY=DATA_PUMP_DIR DUMPFILE=FALABELLA_AR_20111214.DMP LOGFILE=FALABELLA_AR_impdp_ALL_20111215.log  SCHEMAS=FALABELLA_AR_CORE,FALABELLA_AR_CATA,FALABELLA_AR_CATB,FALABELLA_AR_PUB REMAP_TABLESPACE=TBS_FALABELLA:TBS_FALABELLA_AR CONTENT=ALL PARALLEL=1 STATUS=10 TABLE_EXISTS_ACTION=REPLACE TRANSFORM=segment_attributes:n:table  

--第一次导入

impdp system/oracle@oracle DIRECTORY=DATA_PUMP_DIR DUMPFILE=FALABELLA_AR_20111214.DMP LOGFILE=FALABELLA_AR_impdp_ALL_20111215.log  SCHEMAS=FALABELLA_AR_CORE,FALABELLA_AR_CATA,FALABELLA_AR_CATB,FALABELLA_AR_PUB REMAP_TABLESPACE=TBS_FALABELLA:TBS_FALABELLA_AR CONTENT=ALL PARALLEL=1 STATUS=10 TABLE_EXISTS_ACTION=REPLACE TRANSFORM=segment_attributes:n:table

导入时发现源库和目标库的字符集不一样,导入的时候虽然完成了,但有一些字段在字符转换的时候报出字段长度不够。检查日志,发现很多如下错误:

[sql] view plaincopyprint?

1.ORA-02374: conversion error loading table "FALABELLA_AR_PUB"."RGLLEVVF"  

2.ORA-129: value too large for column XAPM_NOVIA (actual: 16, maximum: 15)  

3.ORA-02372: data for row: XAPM_NOVIA : 0X'4F4C4D45D14F202020202020202020'  

ORA-02374: conversion error loading table "FALABELLA_AR_PUB"."RGLLEVVF"

ORA-129: value too large for column XAPM_NOVIA (actual: 16, maximum: 15)

ORA-02372: data for row: XAPM_NOVIA : 0X'4F4C4D45D14F202020202020202020'

于是想出一个办法,先单独导入元数据,然后查找日志,找出所有字段长度有问题的表,把相应的列长度改长:

[sql] view plaincopyprint?

1.--单独导入元数据   

2.impdp system/oracle@oracle DIRECTORY=DATA_PUMP_DIR DUMPFILE=FALABELLA_AR_20111214.DMP LOGFILE=FALABELLA_AR_impdp_METADATA_ONLY_DISABLE_CONSTRAINT_20111215.log  SCHEMAS=FALABELLA_AR_CORE,FALABELLA_AR_CATA,FALABELLA_AR_CATB,FALABELLA_AR_PUB REMAP_TABLESPACE=TBS_FALABELLA:TBS_FALABELLA_AR CONTENT=METADATA_ONLY PARALLEL=1 STATUS=10 TABLE_EXISTS_ACTION=REPLACE TRANSFORM=segment_attributes:n:table  

--单独导入元数据

impdp system/oracle@oracle DIRECTORY=DATA_PUMP_DIR DUMPFILE=FALABELLA_AR_20111214.DMP LOGFILE=FALABELLA_AR_impdp_METADATA_ONLY_DISABLE_CONSTRAINT_20111215.log  SCHEMAS=FALABELLA_AR_CORE,FALABELLA_AR_CATA,FALABELLA_AR_CATB,FALABELLA_AR_PUB REMAP_TABLESPACE=TBS_FALABELLA:TBS_FALABELLA_AR CONTENT=METADATA_ONLY PARALLEL=1 STATUS=10 TABLE_EXISTS_ACTION=REPLACE TRANSFORM=segment_attributes:n:table

[sql] view plaincopyprint?

1.--查找日志,找出相应的错误,并修改列   

2.ALTER TABLE FALABELLA_AR_CORE.DCSPP_SHIP_ADDR MODIFY (FIRST_NAME VARCHAR2(50));  

3.ALTER TABLE FALABELLA_AR_PUB.RGLLEVVF MODIFY (  XNMB_NOVIO CHAR(30 BYTE), XAPP_NOVIO CHAR(30 BYTE),  XAPM_NOVIO CHAR(30 BYTE), XNMB_NOVIA CHAR(30 BYTE), XAPP_NOVIA CHAR(30 BYTE), XAPM_NOVIA CHAR(30 BYTE));  

4.ALTER TABLE FALABELLA_AR_CORE.DPS_USER MODIFY ( LOGIN VARCHAR2(2 BYTE) NOT NULL);  

5.ALTER TABLE FALABELLA_AR_CORE.FBL_CONTACT_INFO MODIFY ( EMAIL VARCHAR2(2 BYTE));  

6.ALTER TABLE FALABELLA_AR_CORE.FBL_ELECTRONIC_SHIPPING MODIFY(SENDER_NAME VARCHAR2( BYTE));  

7.ALTER TABLE FALABELLA_AR_CATA.FBL_STOCK_N_SHIP_WAREHOUSE MODIFY ( CUT_OFF_TIME VARCHAR2(10 BYTE));  

8.ALTER TABLE FALABELLA_AR_CATB.FBL_STOCK_N_SHIP_WAREHOUSE MODIFY ( CUT_OFF_TIME VARCHAR2(10 BYTE));  

9.ALTER TABLE FALABELLA_AR_PUB.FBL_STOCK_N_SHIP_WAREHOUSE MODIFY( CUT_OFF_TIME VARCHAR2(10 BYTE));  

10.ALTER TABLE FALABELLA_AR_CORE.FBL_ORDER_BANK_PROMOTION MODIFY (BANK_NAME  VARCHAR2(30 BYTE));  

--查找日志,找出相应的错误,并修改列

ALTER TABLE FALABELLA_AR_CORE.DCSPP_SHIP_ADDR MODIFY (FIRST_NAME VARCHAR2(50));

ALTER TABLE FALABELLA_AR_PUB.RGLLEVVF MODIFY (  XNMB_NOVIO CHAR(30 BYTE), XAPP_NOVIO CHAR(30 BYTE),  XAPM_NOVIO CHAR(30 BYTE), XNMB_NOVIA CHAR(30 BYTE), XAPP_NOVIA CHAR(30 BYTE), XAPM_NOVIA CHAR(30 BYTE));

ALTER TABLE FALABELLA_AR_CORE.DPS_USER MODIFY ( LOGIN VARCHAR2(2 BYTE) NOT NULL);

ALTER TABLE FALABELLA_AR_CORE.FBL_CONTACT_INFO MODIFY ( EMAIL VARCHAR2(2 BYTE));

ALTER TABLE FALABELLA_AR_CORE.FBL_ELECTRONIC_SHIPPING MODIFY(SENDER_NAME VARCHAR2( BYTE));

ALTER TABLE FALABELLA_AR_CATA.FBL_STOCK_N_SHIP_WAREHOUSE MODIFY ( CUT_OFF_TIME VARCHAR2(10 BYTE));

ALTER TABLE FALABELLA_AR_CATB.FBL_STOCK_N_SHIP_WAREHOUSE MODIFY ( CUT_OFF_TIME VARCHAR2(10 BYTE));

ALTER TABLE FALABELLA_AR_PUB.FBL_STOCK_N_SHIP_WAREHOUSE MODIFY( CUT_OFF_TIME VARCHAR2(10 BYTE));

ALTER TABLE FALABELLA_AR_CORE.FBL_ORDER_BANK_PROMOTION MODIFY (BANK_NAME  VARCHAR2(30 BYTE));

然后再单独导入数据,但单独导入数据时由于先后关系,会检查参照完整性,于是先DISABLE所有的参照完整性,再导入数据,等导入完成后,再启用所有的参照完整性约束。

[sql] view plaincopyprint?

1.--报外键约束错误   

2.ORA-31693: Table data object "FALABELLA_AR_CORE"."DCSPP_SHIPITEM_REL" failed to load/unload and is being skipped due to error:  

3.ORA-29913: error in executing ODCIEXTTABLEFETCH callout  

4.ORA-02291: integrity constraint (FALABELLA_AR_CORE.DCSPP_SHRELTNSHP_F) violated - parent key not found  

--报外键约束错误

ORA-31693: Table data object "FALABELLA_AR_CORE"."DCSPP_SHIPITEM_REL" failed to load/unload and is being skipped due to error:

ORA-29913: error in executing ODCIEXTTABLEFETCH callout

ORA-02291: integrity constraint (FALABELLA_AR_CORE.DCSPP_SHRELTNSHP_F) violated - parent key not found

[sql] view plaincopyprint?

1.--于是,禁用所有外键约束   

2.select 'ALTER TABLE '||OWNER||'.'||TABLE_NAME||' DISABLE CONSTRAINT '||constraint_name||';' from dba_constraints where owner in('FALABELLA_AR_CORE','FALABELLA_AR_CATA','FALABELLA_AR_CATB','FALABELLA_AR_PUB') and CONSTRAINT_TYPE='R';  

--于是,禁用所有外键约束

select 'ALTER TABLE '||OWNER||'.'||TABLE_NAME||' DISABLE CONSTRAINT '||constraint_name||';' from dba_constraints where owner in('FALABELLA_AR_CORE','FALABELLA_AR_CATA','FALABELLA_AR_CATB','FALABELLA_AR_PUB') and CONSTRAINT_TYPE='R';

[sql] view plaincopyprint?

1.--单独导入数据   

2.impdp system/oracle@oracle DIRECTORY=DATA_PUMP_DIR DUMPFILE=FALABELLA_AR_20111214.DMP LOGFILE=FALABELLA_AR_impdp_DATA_ONLY_DISABLE_CONSTRAINT__20111215.log  SCHEMAS=FALABELLA_AR_CORE,FALABELLA_AR_CATA,FALABELLA_AR_CATB,FALABELLA_AR_PUB REMAP_TABLESPACE=TBS_FALABELLA:TBS_FALABELLA_AR CONTENT=DATA_ONLY PARALLEL=1 STATUS=10 TRANSFORM=segment_attributes:n:table  

--单独导入数据

impdp system/oracle@oracle DIRECTORY=DATA_PUMP_DIR DUMPFILE=FALABELLA_AR_20111214.DMP LOGFILE=FALABELLA_AR_impdp_DATA_ONLY_DISABLE_CONSTRAINT__20111215.log  SCHEMAS=FALABELLA_AR_CORE,FALABELLA_AR_CATA,FALABELLA_AR_CATB,FALABELLA_AR_PUB REMAP_TABLESPACE=TBS_FALABELLA:TBS_FALABELLA_AR CONTENT=DATA_ONLY PARALLEL=1 STATUS=10 TRANSFORM=segment_attributes:n:table

[sql] view plaincopyprint?

1.--启用所有外键约束   

2.select 'ALTER TABLE '||OWNER||'.'||TABLE_NAME||' ENABLE NOVALIDATE CONSTRAINT '||constraint_name||';' from dba_constraints where owner in('FALABELLA_AR_CORE','FALABELLA_AR_CATA','FALABELLA_AR_CATB','FALABELLA_AR_PUB') and CONSTRAINT_TYPE='R';  

--启用所有外键约束

select 'ALTER TABLE '||OWNER||'.'||TABLE_NAME||' ENABLE NOVALIDATE CONSTRAINT '||constraint_name||';' from dba_constraints where owner in('FALABELLA_AR_CORE','FALABELLA_AR_CATA','FALABELLA_AR_CATB','FALABELLA_AR_PUB') and CONSTRAINT_TYPE='R';

OK,大功告成,终于看到了久违的成功日志:

Job "SYSTEM"."SYS_IMPORT_SCHEMA_03" successfully completed at 07:29:24

文档

【数据泵】11G数据迁移10G数据库

环境介绍源环境:WindowsServer2008X+Oracle11G目标环境:Linux5.4+Oracle10G(10.2.0.4.0)Rac迁移方式由于由上至下迁移,采用exp/imp无法正常导入;故使用expdp/impdp(数据泵)迁移迁移步骤源端:连接cms数据库服务器192.168.253.113administrator/******打开dos窗口通过expdp命令导出dmp文件,命令如下:Expdpcms/******@orcldirectory=DATA
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top