重庆思庄Oracle、Redhat认证学习论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 9659|回复: 3
打印 上一主题 下一主题

oracle 11g逻辑备份介绍 - exp/imp

[复制链接]
跳转到指定楼层
楼主
发表于 2012-6-18 10:57:25 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
 

一、exp 数据备份

Oracle逻辑备份不需要数据库运行在归档模式下,不但备份简单,而且可以不需要外部存储设备。


逻辑备份又分为三种模式。

表模式(T):

这种模式可以卸出当前用户数据库模式下的表,甚至是所有的表。具有特权的用户可根据所指定的数据库模式来(限制表)卸出他们所包含的表。缺省情况是卸出属于当前正在进行卸出的用户的所有表。

用户模式(U):这种模式可以卸出当前用户数据库模式下的所有实体(表、数据和索引)。

全数据库模式(F):只有具有EXP_FULL_DATABASE角色的用户才可能以这种模式卸出。以这种模式进行卸出的用户,除SYS模式下的内容之外,数据库中所有实体都可以卸出。 下面列出给用户赋予EXP_FULL_DATABASE角色的方法。

要选择表、用户或全数据库方式,可相应指定TABLES=tablelist、OWNER=userlist或FULL=y。

1、表模式

EXP  imuse01/ imuse01  BUFFER=8192(或64000)FILE=imuse01.dmp 或(磁带设备/dev/rmt0) TABLES=imuse01.basetab

(或imuse01.basetab,imuse01.serviceinfo .....) ROWS=Y  COMPRESS=N  LOG= EXP_IMUSE01 _SERVICEINFO.LOG

 

参数说明:

BUFFER

缓冲区大小

FILE

由Export创建的输出文件的名字

TABLES

将要卸出的表名列表

ROWS

指明是否卸出表中数据的行数,缺省为“Y”。

COMPRESS

指明在装入期间是否将表中数据压缩到一个区域中。如果在卸出数据时,指定参数COMPRESS=Y,那么装入时,就会将数据压缩到一个初始区域中。这种选择可以保持初始化区域的原始大小。缺省为“Y”。

LOG

指定一个接收有用信息和错误信息的文件


2、用户模式:

EXP imuse01/ imuse01 OWNER= imuse01 BUFFER=8192(或64000)FILE= imuse01.dmp 或(磁带设备/dev/rmt0)

ROWS=Y  COMPRESS=N  LOG= EXP_IMUSE01 .LOG

 

参数说明:

OWNER

将要卸出的用户名列表

BUFFER、FILE、ROWS、COMPRESS、LOG

同上


3、全数据库模式

EXP  imuse01/ imuse01  BUFFER=8192(或64000)  FILE=EXP_IMUSE01.dmp (或磁带设备/dev/rmt0)

FULL=Y    ROWS=Y   COMPRESS=N LOG= EXP_IMUSE01_DB.LOG

 

对于数据库备份,建议采用增量备份,即只备份上一次备份以来更改的数据。

增量备份命令:

EXP ICDMAIN/ICD  BUFFER=8192(或64000)FILE=EXP_ICDMAIN_DB.DMP (或磁带设备/dev/rmt0)

FULL=Y  INCTYPE= incremental ROWS=Y COMPRESS=N LOG=EXP_ICDMAIN_DB.LOG

 

参数说明:

BUFFER、FILE、ROWS、COMPRESS、LOG

同上

FULL

指明是否卸出完整的数据库。如果FULL=Y,将以全数据库模式进行卸出。

INCTYPE

增加卸出的类型,有效值有complete(完全)、comulative(固定)和incremental(增量)。

complete

输出所有表

comulative

将输入第一次完全输出后修改过的表

incremental

将输出前一次输出后修改过的表


说明:

关于增量备份必须满足下列条件:

只对数据库备份有效,且第一次需要FULL=Y参数,以后需要INCTYPE=INCREMENTAL参数。

用户必须有EXP_FULL_DATABASE权限。

 

二、imp 数据恢复

Import和Export是两个相配套的实用程序,Export把数据库中的数据卸出到操作系统文件中,而Import实用程序则把Export卸出的数据恢复到数据库中。按备份方案确定恢复方案,例如:采用表逻辑备份方案,则恢复方案也采用恢复到表的方式(不应恢复到用户)。

要使用Import,必须具有CREATE SESSION特权,以便能注册到ORACLE RDBMS中去。这一特权属于在数据库创建时所建立的CONNECT角色。

如果卸出文件是由某用户利用EXP_FULL_DATABASE角色创建的全数据库卸出,那么只有具有IMP_FULL_DATABASE角色的用户才能装入这样的文件。

数据库的逻辑恢复分为表、用户、数据库三种模式。

 

1、表模式

恢复方法为:

IMP  imuse01/imuse01  FILE=文件名 LOG=LOG文件名  ROWS=Y COMMIT=Y BUFFER=Y IGNORE=Y TABLES=(表名1,表名2,表名3,表名4,.......)   

 

参数说明:

BUFFER

缓冲区大小

FILE

用于装入的卸出文件名字

TABLES

将要装入的表名列表

ROWS

指明是否装入表数据的行,缺省为“Y”。

IGNORE

指明如何处理实体创建错误。指定IGNORE=Y,当试图创建数据库实体时,忽略实体存在错误。对除了表之外的其他实体,指定IGNORE=Y,Import不报告错误,继续执行。而指定IGNORE=N时,Import在继续执行前报告实体创建错误。

COMMIT

指明在每个矩阵插入之后是否提交。缺省时,Import在装入每个实体之后提交。指定COMMIT=N时,如有错误产生,Import在记录装入下一个实体之前,完成一个回退。指定COMMIT=Y时,可以抑制回滚字段无限制增大,并改善大量装入时的性能,表具有唯一约束时,这种选择比较好。如果再次开始装入,将拒绝装入已经装入的任何行,原因是非致命性错误。表具有非唯一约束时,指定COMMIT=N可能是比较好的选择。因为重新装入可能会产生重复行。

LOG

指定一个接收有用信息和错误信息的文件


2、用户模式

如果备份方式为用户模式,采用下列恢复方法:

IMP system/manager FROMUSER=imuse01 TOUSER= imuse01 FILE=文件名 LOG=LOG文件名 ROWS=Y COMMIT=Y

BUFFER=Y IGNORE=Y

 

参数说明同上。

 

3、数据库模式

如果备份方式为数据库模式,采用下列恢复方法:

IMP system/manager FULL=Y  FILE=文件名 LOG=LOG文件名 ROWS=Y COMMIT=Y BUFFER=Y IGNORE=Y

 

4、字符集转换

对于单字节字符集(例如US7ASCII),恢复时,数据库自动转换为该会话的字符集(NLA_LANG参数);对于多字节字符集(例如ZHS168CGB),恢复时,应尽量使字符集相同(避免转换),如果要转换,目标数据库的字符集应是输出数据库字符集的超集。

 

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 支持支持 反对反对
回复

使用道具 举报

沙发
发表于 2012-6-18 12:00:18 | 只看该作者
比较全面,逻辑备份目前在实际用户使用的比较多.
回复 支持 反对

使用道具 举报

板凳
发表于 2012-6-18 13:11:22 | 只看该作者
谢谢  很实用 收藏一个备用
回复 支持 反对

使用道具 举报

地板
发表于 2012-6-18 16:22:49 | 只看该作者
顶一个[em50]

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|手机版|小黑屋|重庆思庄Oracle、Redhat认证学习论坛 ( 渝ICP备12004239号-4 )

GMT+8, 2024-11-28 19:19 , Processed in 0.096477 second(s), 20 queries .

重庆思庄学习中心论坛-重庆思庄科技有限公司论坛

© 2001-2020

快速回复 返回顶部 返回列表