- 浏览: 238382 次
最新评论
impdp数据导入时,如果字符集不同,是无法正常导入的,这时候有一个办法是:在要导入的新库里手动创建表,然后只导入数据
下面这个是一个简单例子:
1.直接手动创建表
2.然后修改字段长
3.,最后导入数据
由于原字符集是NLS_CHARACTERSET---ZHS16GBK,而生产是UTF-8
要知道
GBK 一个汉字占用两个字节
UTF8 一个汉字占用三个字节
所以当字符集变成了UTF8的时候,原先指定的长度可能就会不够用
我这里是将所有varchar2类型的都变长,至少1.5倍
所以我们需要修改字段长度,不然会报错:
ORA-02374: conversion error loading table "NEWCCS"."SRVTRACEHIST"
ORA-12899: value too large for column ABOUT (actual: 2075, maximum: 2000)
ORA-02372: data for row: ABOUT : 0X'B5DAC8FDB7BD20BACED0A1BDE320363638353831383920C0B4'
先只导结构(metadata_only)
SQL> desc newccs.SRVTRACEHIST
Name Null? Type
----------------------------------------- -------- ----------------------------
ID NOT NULL VARCHAR2(20)
CALLNO VARCHAR2(20)
CALLTIME DATE
SRVTYPE VARCHAR2(100)
SUBITEM VARCHAR2(100)
ACTION VARCHAR2(100)
ABOUT VARCHAR2(2000)
CUSTID VARCHAR2(12)
CARRYID VARCHAR2(12)
SRCFLOW VARCHAR2(20)
OPID VARCHAR2(10)
OPNAME VARCHAR2(10)
CALLCENTER VARCHAR2(20)
CREATETIME VARCHAR2(19)
修改长度
SQL> alter table newccs.SRVTRACEHIST modify (SRVTYPE VARCHAR2(200),SUBITEM VARCHAR2(200), ACTION VARCHAR2(200), ABOUT VARCHAR2(3000), OPNAME VARCHAR2(30), CALLCENTER VARCHAR2(30), CREATETIME VARCHAR2(30));
全都要改
SQL> desc newccs.SRVTRACEHIST
Name Null? Type
----------------------------------------- -------- ----------------------------
ID NOT NULL VARCHAR2(30)
CALLNO VARCHAR2(30)
CALLTIME DATE
SRVTYPE VARCHAR2(200)
SUBITEM VARCHAR2(200)
ACTION VARCHAR2(200)
ABOUT VARCHAR2(3000)
CUSTID VARCHAR2(30)
CARRYID VARCHAR2(30)
SRCFLOW VARCHAR2(30)
OPID VARCHAR2(30)
OPNAME VARCHAR2(30)
CALLCENTER VARCHAR2(30)
CREATETIME VARCHAR2(30)
再导数据(data_only)
Import: Release 11.2.0.3.0 - Production on Mon Mar 24 18:26:23 2014
Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.
Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,
Data Mining and Real Application Testing options
Master table "SYSTEM"."SYS_IMPORT_TABLE_01" successfully loaded/unloaded
Starting "SYSTEM"."SYS_IMPORT_TABLE_01": system/******** parfile=SRVTRACEHIST_imp_data.par
Processing object type TABLE_EXPORT/TABLE/TABLE_DATA
. . imported "NEWCCS"."SRVTRACEHIST" 495.7 MB 4172381 rows
Job "SYSTEM"."SYS_IMPORT_TABLE_01" successfully completed at 18:28:21
SQL> desc newccs.SRVTRACE
Name Null? Type
----------------------------------------- -------- ----------------------------
ID NOT NULL VARCHAR2(20)
CALLNO VARCHAR2(20)
CALLTIME DATE
SRVTYPE VARCHAR2(100)
SUBITEM VARCHAR2(100)
ACTION VARCHAR2(100)
ABOUT VARCHAR2(2000)
CUSTID VARCHAR2(12)
CARRYID VARCHAR2(12)
SRCFLOW VARCHAR2(20)
OPID VARCHAR2(10)
OPNAME VARCHAR2(10)
CALLCENTER VARCHAR2(20)
CREATETIME VARCHAR2(19)
alter table newccs.SRVTRACE modify (CUSTID VARCHAR2(30), CARRYID VARCHAR2(30), SRCFLOW VARCHAR2(30), OPID VARCHAR2(30), OPNAME VARCHAR2(30), CALLCENTER VARCHAR2(30), CREATETIME VARCHAR2(30));
SQL> desc newccs.SRVTRACE
Name Null? Type
----------------------------------------- -------- ----------------------------
ID NOT NULL VARCHAR2(30)
CALLNO VARCHAR2(30)
CALLTIME DATE
SRVTYPE VARCHAR2(200)
SUBITEM VARCHAR2(200)
ACTION VARCHAR2(200)
ABOUT VARCHAR2(3000)
CUSTID VARCHAR2(30)
CARRYID VARCHAR2(30)
SRCFLOW VARCHAR2(30)
OPID VARCHAR2(30)
OPNAME VARCHAR2(30)
CALLCENTER VARCHAR2(30)
CREATETIME VARCHAR2(30)
SQL> desc NEWCCS.RECORDINFO
Name Null? Type
----------------------------------------- -------- ----------------------------
AGENTID VARCHAR2(10)
BEGINTIME VARCHAR2(20)
TIMELEN NUMBER(38)
FILENAME VARCHAR2(41)
CALLTYPE NUMBER(3)
CALLNO VARCHAR2(25)
TIMEZONE VARCHAR2(10)
alter table NEWCCS.RECORDINFO modify (AGENTID VARCHAR2(30) ,BEGINTIME VARCHAR2(30) , FILENAME VARCHAR2(60), CALLNO VARCHAR2(40) ,TIMEZONE VARCHAR2(30));
导数时,字符集不同,需要手动创建表,不要导入表结构,经常有触发器失败,数据没办法导入
直接手动创建表,然后修改字段长度,最后导入数据
Import: Release 11.2.0.3.0 - Production on Fri Apr 4 11:47:44 2014
Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.
Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,
Data Mining and Real Application Testing options
Master table "SYSTEM"."SYS_IMPORT_TABLE_01" successfully loaded/unloaded
Starting "SYSTEM"."SYS_IMPORT_TABLE_01": system/******** parfile=custphone_imp_data.par
Processing object type TABLE_EXPORT/TABLE/TABLE_DATA
. . imported "NEWCCS"."CUSTPHONE" 399.8 MB 8079759 rows
Job "SYSTEM"."SYS_IMPORT_TABLE_01" successfully completed at 11:49:54
下面这个是一个简单例子:
1.直接手动创建表
2.然后修改字段长
3.,最后导入数据
由于原字符集是NLS_CHARACTERSET---ZHS16GBK,而生产是UTF-8
要知道
GBK 一个汉字占用两个字节
UTF8 一个汉字占用三个字节
所以当字符集变成了UTF8的时候,原先指定的长度可能就会不够用
我这里是将所有varchar2类型的都变长,至少1.5倍
所以我们需要修改字段长度,不然会报错:
ORA-02374: conversion error loading table "NEWCCS"."SRVTRACEHIST"
ORA-12899: value too large for column ABOUT (actual: 2075, maximum: 2000)
ORA-02372: data for row: ABOUT : 0X'B5DAC8FDB7BD20BACED0A1BDE320363638353831383920C0B4'
先只导结构(metadata_only)
SQL> desc newccs.SRVTRACEHIST
Name Null? Type
----------------------------------------- -------- ----------------------------
ID NOT NULL VARCHAR2(20)
CALLNO VARCHAR2(20)
CALLTIME DATE
SRVTYPE VARCHAR2(100)
SUBITEM VARCHAR2(100)
ACTION VARCHAR2(100)
ABOUT VARCHAR2(2000)
CUSTID VARCHAR2(12)
CARRYID VARCHAR2(12)
SRCFLOW VARCHAR2(20)
OPID VARCHAR2(10)
OPNAME VARCHAR2(10)
CALLCENTER VARCHAR2(20)
CREATETIME VARCHAR2(19)
修改长度
SQL> alter table newccs.SRVTRACEHIST modify (SRVTYPE VARCHAR2(200),SUBITEM VARCHAR2(200), ACTION VARCHAR2(200), ABOUT VARCHAR2(3000), OPNAME VARCHAR2(30), CALLCENTER VARCHAR2(30), CREATETIME VARCHAR2(30));
全都要改
SQL> desc newccs.SRVTRACEHIST
Name Null? Type
----------------------------------------- -------- ----------------------------
ID NOT NULL VARCHAR2(30)
CALLNO VARCHAR2(30)
CALLTIME DATE
SRVTYPE VARCHAR2(200)
SUBITEM VARCHAR2(200)
ACTION VARCHAR2(200)
ABOUT VARCHAR2(3000)
CUSTID VARCHAR2(30)
CARRYID VARCHAR2(30)
SRCFLOW VARCHAR2(30)
OPID VARCHAR2(30)
OPNAME VARCHAR2(30)
CALLCENTER VARCHAR2(30)
CREATETIME VARCHAR2(30)
再导数据(data_only)
Import: Release 11.2.0.3.0 - Production on Mon Mar 24 18:26:23 2014
Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.
Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,
Data Mining and Real Application Testing options
Master table "SYSTEM"."SYS_IMPORT_TABLE_01" successfully loaded/unloaded
Starting "SYSTEM"."SYS_IMPORT_TABLE_01": system/******** parfile=SRVTRACEHIST_imp_data.par
Processing object type TABLE_EXPORT/TABLE/TABLE_DATA
. . imported "NEWCCS"."SRVTRACEHIST" 495.7 MB 4172381 rows
Job "SYSTEM"."SYS_IMPORT_TABLE_01" successfully completed at 18:28:21
SQL> desc newccs.SRVTRACE
Name Null? Type
----------------------------------------- -------- ----------------------------
ID NOT NULL VARCHAR2(20)
CALLNO VARCHAR2(20)
CALLTIME DATE
SRVTYPE VARCHAR2(100)
SUBITEM VARCHAR2(100)
ACTION VARCHAR2(100)
ABOUT VARCHAR2(2000)
CUSTID VARCHAR2(12)
CARRYID VARCHAR2(12)
SRCFLOW VARCHAR2(20)
OPID VARCHAR2(10)
OPNAME VARCHAR2(10)
CALLCENTER VARCHAR2(20)
CREATETIME VARCHAR2(19)
alter table newccs.SRVTRACE modify (CUSTID VARCHAR2(30), CARRYID VARCHAR2(30), SRCFLOW VARCHAR2(30), OPID VARCHAR2(30), OPNAME VARCHAR2(30), CALLCENTER VARCHAR2(30), CREATETIME VARCHAR2(30));
SQL> desc newccs.SRVTRACE
Name Null? Type
----------------------------------------- -------- ----------------------------
ID NOT NULL VARCHAR2(30)
CALLNO VARCHAR2(30)
CALLTIME DATE
SRVTYPE VARCHAR2(200)
SUBITEM VARCHAR2(200)
ACTION VARCHAR2(200)
ABOUT VARCHAR2(3000)
CUSTID VARCHAR2(30)
CARRYID VARCHAR2(30)
SRCFLOW VARCHAR2(30)
OPID VARCHAR2(30)
OPNAME VARCHAR2(30)
CALLCENTER VARCHAR2(30)
CREATETIME VARCHAR2(30)
SQL> desc NEWCCS.RECORDINFO
Name Null? Type
----------------------------------------- -------- ----------------------------
AGENTID VARCHAR2(10)
BEGINTIME VARCHAR2(20)
TIMELEN NUMBER(38)
FILENAME VARCHAR2(41)
CALLTYPE NUMBER(3)
CALLNO VARCHAR2(25)
TIMEZONE VARCHAR2(10)
alter table NEWCCS.RECORDINFO modify (AGENTID VARCHAR2(30) ,BEGINTIME VARCHAR2(30) , FILENAME VARCHAR2(60), CALLNO VARCHAR2(40) ,TIMEZONE VARCHAR2(30));
导数时,字符集不同,需要手动创建表,不要导入表结构,经常有触发器失败,数据没办法导入
直接手动创建表,然后修改字段长度,最后导入数据
Import: Release 11.2.0.3.0 - Production on Fri Apr 4 11:47:44 2014
Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.
Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,
Data Mining and Real Application Testing options
Master table "SYSTEM"."SYS_IMPORT_TABLE_01" successfully loaded/unloaded
Starting "SYSTEM"."SYS_IMPORT_TABLE_01": system/******** parfile=custphone_imp_data.par
Processing object type TABLE_EXPORT/TABLE/TABLE_DATA
. . imported "NEWCCS"."CUSTPHONE" 399.8 MB 8079759 rows
Job "SYSTEM"."SYS_IMPORT_TABLE_01" successfully completed at 11:49:54
发表评论
-
ETL工具--kettle简介
2016-02-24 11:21 0oracle ETL工具---数据迁移 常用的有:OWB(o ... -
oracle 游标实例
2015-12-31 17:23 1196oracle游标 游标-----内存 ... -
10053事件分析
2015-12-25 17:37 7801)10053介绍: 10053 事件是oracle 提供的用 ... -
oracle绑定变量学习
2015-12-25 17:01 1585绑定变量(binding variable) ... -
oracle 绑定变量
2015-12-24 17:26 0关键词: 绑定变量(binding variable),共享池 ... -
oracle插入大量数据
2015-12-23 17:35 1409oracle插入大量数据 1.生 ... -
ORA-03113:end-of-file on communication channel
2015-12-23 14:32 1138测试上面的一个库 plsql报错:shared memory ... -
oracle分区表【转】
2015-12-23 14:20 432oracle分区表 1.表空间及 ... -
迁移数据文件到ASM【转】
2015-12-23 11:53 7641.迁移数据文件到ASM 1) ... -
adrci命令
2015-12-23 11:46 3043一、adrci说明 在oracle11g中,dump ... -
用户+角色+权限
2015-12-21 17:58 889角色与用户权限的学习 ... -
oracle database link
2015-12-21 17:08 868目前我的数据库里只有tinadb一个实例,要创建db link ... -
oracle回收站
2015-12-21 14:22 422oracle回收站 1.drop table books; ... -
使用nid修改sid和dbname
2015-12-21 15:29 759如非必要,不建议在生产库上对dbid进行修改 1、修改dbi ... -
rman模拟故障恢复实验
2015-12-18 16:08 1144补充1:restore database和recover da ... -
rman命令学习-tina(下)
2015-12-18 16:07 1150五、rman删除 delete命令 删除相关的 ... -
rman命令学习-tina(上)
2015-12-18 16:06 873RMAN学习-tina rman的功能非常强大,下面我们来一 ... -
oracle profile介绍
2015-12-16 17:34 618profile文件的介绍: Oracle系统中的profi ... -
oracle缩小表空间
2015-12-18 16:59 1751oracle缩小表空间: oracle常用的此类命令Alte ... -
oracle数据库的启动和关闭【转】
2015-12-16 15:02 1130数据库的启动和关闭 Or ...
相关推荐
oracle的impdp和expdp数据泵导入导出全备数据库-详细笔记文档总结
Centos7.6下oracle impdp导入和expdp导出,
oracle expdp impdp 分区表重映射导出导入 数据迁移方案,以SI01用户为例子,将用户分区表导出后,将分区表重映射到新的表空间,完成数据迁移和检查。照方案例子按步去做,一定能成功。
2、创建逻辑目录用于导出导入数据(目录一定要真实存在) create or replace directory out_dir as 'C:\out'; --out_dir(逻辑目录名,可以随便取) 3、也可以将这个逻辑目录授权给其他用户 grant read,write on ...
oracle数据导出引用程序 impdp.exe,oracle导出数据时必须引用的一个组件,因为有些oracle安装是没有带这个插件,后续导出操作时,可以直接引用
详细介绍oracle11g expdp impdp导入导出的使用
Oracle数据导入导出imp/exp命令 10g以上expdp/impdp命令
oracle expdp,impdp的导入导出
数据泵技术是Oracle Database 10g 中的新技术,它比原来导入/导出(imp,exp)技术快15-45倍。速度的提高源于使用了并行技术来读写导出转储文件。 expdp/impdp和exp/imp的区别 exp和imp是客户端工具程序,它们既可以在...
oracle数据库导入导出命令imp exp impdp expdp的使用详解,很有用!
介绍了oracle数据库中使用exp,expdp,imp,impdp导出导入数据主方法,适合刚接触oracle数据的同学了解下。共同学习。
Oracle Database 10g引入了最新的数据泵(Data Dump)技术,使DBA或开发人员可以将数据库元数据(对象定义)和数据快速移动到另一个oracle数据库中。此为常用导入导出命令。
导入数据库:imp 导出数据库:exp
通过数据泵(expdp、impdp)导出Oracle表、库等详细,已经经过验证
oracle数据泵expdp impdp使用说明
在10g之前,传统的导出和导入分别使用EXP工具和IMP工具,从10g开始,不仅保留了原有的EXP和IMP工具,还提供了数据泵导出导入工具EXPDP和IMPDP.使用EXPDP和IMPDP时应该注意的事项; EXP和IMP是客户段工具程序,它们既可以在...
Oracle_expdp_impdp用法详解
NULL 博文链接:https://bri-robby.iteye.com/blog/2327887
Oracle Database 10g引入了最新的数据泵(Data Dump)技术,数据泵导出导入(EXPDP和IMPDP)的作用 1)实现逻辑备份和逻辑恢复. 2)在数据库用户之间移动对象. 3)在数据库之间移动对象 4)实现表空间搬移. 二、数据泵...