Oracle导入导出技术规范.doc
文本预览下载声明
PAGE 3
Oracle 数据库导入导出技术规范 文档版本:v1.0
秘密
Oracle导入导出技术规范
编制人
授权人:
版本号
生效日期:
版本记录
版本号
日 期
修 改 者
说 明
文 件 名
Oracle 数据库导入导出技术规范
TOC \o 1-2 \h \z \u 第一部分:文档信息 3
第二部分:Oracle数据库导入导出的基本概念 4
第三部分:导入导出前应检查确认的信息 5
第四部分:参数说明 9
第五部分:EXPDP/IMPDP导入导出细则说明 10
第六部分:导入导出真实案例(案例采用生产数据库变更并随时更新) 12
第七部分:exp/imp导入导出细则说明 12
第八部分:导入完毕后对目标库的检查信息确认 12
第一部分:文档信息
序号
行动类型
人员
修改日期
修改原因
审核人员
备注
1
创建
本文档是针对Oracle10G及Oracle11g数据库导入导出技术文档。
需要补充如下几点内容:
如果是U2L迁移 要保证数据一致性
(1) 迁移前一定要把源库listener关闭(或监听端口修改掉,如果需要使用dblink迁移)
(2)U2L迁移前一定把源库的用户LOCK住(如果采用dblink迁移,修改密码(注意记录原来的密码)
(3)源库的JOB需要关闭
如果迁移在固定时间内没有完成 需要回退 一定要把目标库的监听关闭,把目标库上的用户锁住
第二部分:Oracle数据库导入导出的基本概念
exp/imp EXPDP/IMPDP的基本概念
EXPDP和IMPDP叫做数据泵(Oracle Data Pump),是ORACLE10G开始出现的导入导出工具,相对于数据泵EXP和IMP叫做传统导入导出工具(the original Export and Import utilities),一般来说,ORACLE建议使用数据泵,因为他支持ORACLE10G之后的所有新特性,而传统导入导出工具不支持。这两种类型的导入导出工具都支持跨操作系统平台和跨ORACLE版本。
exp/imp EXPDP/IMPDP的主要区别
1)EXPDP/IMPDP数据泵是服务端的工具,它只能在服务端使用而不能在客户端使用,也不能在DG库上使用
2)exp/imp可以在服务端和客户端使用,也可以在只读的DG库上使用
使用传统导入导出工具的情况:
1、 需要导入由EXP生成的文件
2、 需要导出将会由IMP导入的文件,例如从ORACLE10G导出数据,接着要导入到更低版本的数据库中。
ORACLE数据泵技术可以非常高速的在两个库之间转移数据和元数据。这种技术只在ORACLE10.1和之后的版本可用。
数据泵组件
数据泵由三部分组成:
1、 命令行客户端(expdp和impdp)
2、 DBMS_DATAPUMP包 (也就是Data Pump API)
3、 DBMS_METADATA包 (也就是Metadata API)
命令行客户端与传统的exp和imp非常相似,但它是通过使用DBMS_DATAPUMP包提供的过程执行导入导出命名。所有的数据泵执行过程都是在服务器端进行的,这意味着所有的非授权用户,需要让DBA创建一个DIRECTORY来读写数据泵文件。对于授权用户,有一个默认的DIRECTORY可以用。DBMS_DATAPUMP 和DBMS_METADATA包可以独立于expdp、impdp而独立使用,就像ORACLE的其他包一样。
导入导出传输模式
1)exp导出分为表模式,用户模式,完全模式。分别对应导出表,导出整个用户下的对象,导出整个库下的所有对象
2)EXPDP导出分为表模式、用户模式、数据库模式、可传输表空间模式
源库和目标库
源库是指提供数据来源的数据库
目标库是指需要将数据导入的数据库
第三部分:导入导出前应检查确认的信息
1、字符集检查,检查源库、目标库的字符集字符集是否一致
select userenv(language) from dual;
USERENV(LANGUAGE)
AMERICAN_AMERICA.AL32UTF8
echo $NLS_LANG
AMERICAN_AMERICA.AL32UTF8
需要保证源库上的字符集和目标库上的字符集一样,否则expdp/impdp (exp/imp) 容易报告错误,并且丟数据。
另外,需要保证环境变量NLS_LANG和数据库字符集一样,如不一致,需在导入之前先设置字符集
如:如果数据库字符集是AL32UTF8
export nls_lang=AMERICAN_AMERICA.AL32UTF8,而且需要重新登录后生效,可以使用env|grep NLS检查确认
2、数据库版
显示全部