Oracle 数据库的备份与恢复

上一篇 / 下一篇  2008-04-08 10:07:29 / 个人分类:数据库

51Testing软件测试网 e I]9v8F D

文章出处:http://www.pconline.com.cn/pcedu/empolder/db/oracle/0409/461459_1.html

]mL`]051Testing软件测试网P.G?!wP,h!o+_O

Oracle数据库有三种标准的备份方法,它们分别是导出/导入(EXP/IMP)、热备份和冷备份。导出备件是一种逻辑备份,冷备份和热备份是物理备份。51Testing软件测试网[ e#u^4[

51Testing软件测试网DzT.bAv6? I W

  一、 导出/导入(Export/Import)51Testing软件测试网Q [^z;i#J2O

B(u\9B/g:^lj0  利用Export可将数据从数据库中提取出来,利用Import则可将提取出来的数据送回到Oracle数据库中去。
MWp&~S k!D051Testing软件测试网`p+TT,o&J!E"y r&@
  1、 简单导出数据(Export)和导入数据(Import)51Testing软件测试网(Q_B&k;b$})^3j

c*a I%dH A@V i0  Oracle支持三种方式类型的输出:
.? Cu*xZS8y051Testing软件测试网H1x[#y-gh(F ?*_-JLw
  (1)、表方式(T方式),将指定表的数据导出。
#nz,_r N/wk0  (2)、用户方式(U方式),将指定用户的所有对象及数据导出。
7Q p&Hiy M"uK0  (3)、全库方式(Full方式),瘵数据库中的所有对象导出。51Testing软件测试网g5{X2QKAV
51Testing软件测试网S(s1P.TlN$Rk5p
  数据导入(Import)的过程是数据导出(Export)的逆过程,分别将数据文件导入数据库和将数据库数据导出到数据文件。51Testing软件测试网1IX~*p!Tfi
51Testing软件测试网+fs3J0Mv%kC{
  2、 增量导出/导入51Testing软件测试网5q$@ BMjl_X;i
51Testing软件测试网pJ#r4\]
  增量导出是一种常用的数据备份方法,它只能对整个数据库来实施,并且必须作为SYSTEM来导出。在进行此种导出时,系统不要求回答任何问题。导出文件名缺省为export.dmp,如果不希望自己的输出文件定名为export.dmp,必须在命令行中指出要用的文件名。51Testing软件测试网R$Xb)gg7b

$C h1I*r.X1G"z1y0  增量导出包括三种类型:51Testing软件测试网 a1x(t){DFE2@\ r

?Y9Q}k?H0  (1)、“完全”增量导出(Complete)
9|:E/V9qi0  即备份三个数据库,比如:
R'AZ6} ]s0  exp system/manager inctype=complete file=040731.dmp51Testing软件测试网d(gN@lAP
  (2)、“增量型”增量导出51Testing软件测试网(WN+O9~O9M
  备份上一次备份后改变的数据,比如:51Testing软件测试网3obHtP%D:r
  exp system/manager inctype=incremental file=040731.dmp
u!UM!l0W IFOG!m0  (3)、“累积型”增量导出51Testing软件测试网 CV!T'oS3Af+s
  累计型导出方式是导出自上次“完全”导出之后数据库中变化了的信息。比如:51Testing软件测试网PpB8L OQ_
  exp system/manager inctype=cumulative file=040731.dmp51Testing软件测试网$x? Dqh]Fi(q7o0x
  数据库管理员可以排定一个备份日程表,用数据导出的三个不同方式合理高效的完成。51Testing软件测试网3f0R4A3t*^
  比如数据库的被封任务可以做如下安排:51Testing软件测试网9\ B1q6e H

!U"V+b`MA0  星期一:完全备份(A)51Testing软件测试网:SI`v!x-W
  星期二:增量导出(B)51Testing软件测试网#y!d"WjS,P?
  星期三:增量导出(C)
"\ BD:[~2Z3G0  星期四:增量导出(D)51Testing软件测试网2Sw wo6gi
  星期五:累计导出(E)51Testing软件测试网(jMiMsu[2?s
  星期六:增量导出(F)51Testing软件测试网wImV(P4O1~*h.~
  星期日:增量导出(G)51Testing软件测试网5y i#ir hUz+dH

51Testing软件测试网6P0?r D1h$VV

如果在星期日,数据库遭到意外破坏,数据库管理员可按一下步骤来回复数据库:51Testing软件测试网 O%} o LW{q)?DW){/YQ
51Testing软件测试网l duB;N4Khu"cG
  第一步:用命令CREATE DATABASE重新生成数据库结构;
v'h^G4Uo)N1f0  第二步:创建一个足够大的附加回滚。51Testing软件测试网&bjB-|;b]u
  第三步:完全增量导入A:51Testing软件测试网{yQ8J1\
  imp system/manager inctype=RESTORE FULL=y FILE=A
Y7o jn ?5f0  第四步:累计增量导入E:51Testing软件测试网b#B;Db f,A?m%S
  imp system/manager inctype=RESTORE FULL=Y FILE=E51Testing软件测试网H$h@Zi
  第五步:最近增量导入F:51Testing软件测试网x g,w AIG
  imp system/manager inctype=RESTORE FULL=Y FILE=F51Testing软件测试网$o"j%KT#@f)]V h K
51Testing软件测试网{:E1d6kxAt
  二、 冷备份51Testing软件测试网2\v f!n EP P9g OG+l

3j |V7HE5j0  冷备份发生在数据库已经正常关闭的情况下,当正常关闭时会提供给我们一个完整的数据库。冷备份时将关键性文件拷贝到另外的位置的一种说法。对于备份Oracle信息而言,冷备份时最快和最安全的方法。冷备份的优点是:51Testing软件测试网*ROc4b} P |
51Testing软件测试网 n aW$`S.mJ
  1、 是非常快速的备份方法(只需拷文件)
sLzj{/L5S-k0  2、 容易归档(简单拷贝即可)
F G9`f@1OG^9W0  3、 容易恢复到某个时间点上(只需将文件再拷贝回去)
"n`dq;Y|m4q}0  4、 能与归档方法相结合,做数据库“最佳状态”的恢复。51Testing软件测试网 `N]*h$E6I6X.X \
  5、 低度维护,高度安全。51Testing软件测试网"}I mfx&PdKS9?
51Testing软件测试网:A{J3pT%L+b$r
  但冷备份也有如下不足:
P+X w)l*r.s GK#aiI051Testing软件测试网y ]){7~L_0Jcow
  1、 单独使用时,只能提供到“某一时间点上”的恢复。51Testing软件测试网oV"y~!X
  2、 再实施备份的全过程中,数据库必须要作备份而不能作其他工作。也就是说,在冷备份过程中,数据库必须是关闭状态。
s,_8s%N!BZ-n1my5\0  3、 若磁盘空间有限,只能拷贝到磁带等其他外部存储设备上,速度会很慢。51Testing软件测试网ZU.Hbxa"Db!rv
  4、 不能按表或按用户恢复。
#T:`]1]8|051Testing软件测试网(AW$y!t;pV%au
  如果可能的话(主要看效率),应将信息备份到磁盘上,然后启动数据库(使用户可以工作)并将备份的信息拷贝到磁带上(拷贝的同时,数据库也可以工作)。冷备份中必须拷贝的文件包括:51Testing软件测试网1v;xkb!oi
51Testing软件测试网\5fe5t;a~
  1、 所有数据文件51Testing软件测试网JQ/PRg9a*AC
  2、 所有控制文件51Testing软件测试网7U v]o { ]`F
  3、所有联机REDO LOG文件
s`Bv)|km4b#z0  4、 Init.ora文件(可选)
Xx}4?l%[ e-zn051Testing软件测试网r7pU+R:?'M8K4@3o
  值得注意的使冷备份必须在数据库关闭的情况下进行,当数据库处于打开状态时,执行数据库文件系统备份是无效的。51Testing软件测试网8C5q:PdHkC

51Testing软件测试网;I glH`{&N

下面是作冷备份的完整例子。
pf:LP1{0
l4x_"Zr6o g0  (1) 关闭数据库51Testing软件测试网S&k1m:eiA
  sqlplus /nolog51Testing软件测试网8_8vS7pbv&~
  sql>connect /as sysdba
NU^sRU_0  sql>shutdown normal;51Testing软件测试网7fq)S2u e
  (2) 用拷贝命令备份全部的时间文件、重做日志文件、控制文件、初始化参数文件51Testing软件测试网?O6b)F[f
  sql>cp51Testing软件测试网x s ua7FleK0b
  (3) 重启Oracle数据库
+qZs_#?w|r`m0  sql>startup51Testing软件测试网Sk5WT4e$Xg*l
51Testing软件测试网 h"H%g(\ Nu8t&z,Q-w
  三、 热备份
2}G~@,b.lSi2Jz051Testing软件测试网!tP\(G*lSg
  热备份是在数据库运行的情况下,采用archivelog mode方式备份数据库的方法。所以,如果你有昨天夜里的一个冷备份而且又有今天的热备份文件,在发生问题时,就可以利用这些资料恢复更多的信息。热备份要求数据库在Archivelog方式下操作,并需要大量的档案空间。一旦数据库运行在archivelog状态下,就可以做备份了。热备份的命令文件由三部分组成:
2C0ui$X6Ee1r J051Testing软件测试网4YK\IX
  1. 数据文件一个表空间一个表空间的备份。51Testing软件测试网T-lk;XF:H
51Testing软件测试网 xk?!|:G'Y
  (1) 设置表空间为备份状态51Testing软件测试网^7MsA"T;@&^!~
  (2) 备份表空间的数据文件
l/\V4`2fBa8uK1c$NC0  (3) 回复表空间为正常状态51Testing软件测试网+] Y g9C2p9M E L:I y

:Z E-mu[\ G @&zA0  2. 备份归档log文件51Testing软件测试网Aa D6WR] OS
51Testing软件测试网 S;]!\,QA0~-` q3^7j%i
  (1) 临时停止归档进程51Testing软件测试网#\#x M#n ~VFX
  (2) log下那些在archive rede log目标目录中的文件
;U7hx"ecJ6_l9]x0  (3) 重新启动archive进程51Testing软件测试网'T5^Vx A\-R _r@1J
  (4) 备份归档的redo log文件51Testing软件测试网FuQCNnH

q[M-~]'m0  3. 用alter database bachup controlfile命令来备份控制文件51Testing软件测试网c g pSx5w
  热备份的优点是:
`:Q iaF!y8I\8W0
4CU7p/gY#z8DuP0  1. 可在表空间或数据库文件级备份,备份的时间短。51Testing软件测试网/bR%RTa
  2. 备份时数据库仍可使用。51Testing软件测试网G{5f?R0@
  3. 可达到秒级恢复(恢复到某一时间点上)。
N#R&PZu TYY0  4. 可对几乎所有数据库实体做恢复
9uNKm:p ve A0  5. 恢复是快速的,在大多数情况下爱数据库仍工作时恢复。
uIR`]tt0
t)j? VL h#sN-Y0  热备份的不足是:51Testing软件测试网G~`ICxl
51Testing软件测试网| e:`iv%N(d0Q`
  1. 不能出错,否则后果严重51Testing软件测试网 nbmT!C$u T
  2. 若热备份不成功,所得结果不可用于时间点的恢复
Bi`a;sH]b0  3. 因难于维护,所以要特别仔细小心,不允许“以失败告终”。51Testing软件测试网kp iO"Z


TAG: Oracle 数据库 备份 恢复

 

评分:0

我来说两句

日历

« 2024-04-30  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 8495
  • 日志数: 14
  • 书签数: 2
  • 建立时间: 2008-03-13
  • 更新时间: 2008-11-28

RSS订阅

Open Toolbar