【SQL Server】万事无忧——备份和恢复
上一篇 / 下一篇 2012-07-23 09:38:42 / 个人分类:数据库
在SQLServer中,使用数据库备份和还原工具可以创建数据库的拷贝,将该拷贝放到安全的地方,当服务器崩溃或数据被破坏时,该拷贝就可以用于还原数据库。这就是我们本篇文章要说的备份和恢复。51Testing软件测试网8WwB7qD]e
51Testing软件测试网d|)x0j!d!G(1)完整备份与恢复51Testing软件测试网'_ zY\O5~
51Testing软件测试网'C.?6OnyM7El2bv ~制作数据库中所有内容的副本,在备份过程中需要花费的时间和空间最多,不宜频繁进行51Testing软件测试网*{K1F(l \ze
[C} Vx0 恢复时,仅需要恢复最后一次全库备份即可51Testing软件测试网BH^@@-i(G
51Testing软件测试网!vo#{1U7y!RN备份:backup database 数据库名 to 备份设备名 with [name='备份的名称'][init /noinit]
5T,D VgQ0<SPAN style="FONT-SIZE: 18px">backup database MagDB to MagDb_1 with init</SPAN> |
LU)Z!{\4v5C P0 恢复:restore database 数据库名 from 备份设备名 with [norecovery/recovery]
}T8B6s)Tn&{ ?0<SPAN style="FONT-SIZE: 18px">restore database MagDb51Testing软件测试网#r8@4O%P#s/c P
m from MagDb_151Testing软件测试网)~G1Pk+u @6l with norecovery</SPAN> |
"X1o!E5v&b(T0 (2)差异(增量)备份与恢复51Testing软件测试网1y2z(Q-q*a:L*d%rr8o
)`O2d K6^.P&] \0 只备份最后一次全库备份后被修改的数据,备份的时间和空间较少51Testing软件测试网,N`E EVz
-q~%w d-?0 恢复时,先恢复最后一次完整备份,再恢复最后一次差异备份51Testing软件测试网9[+B&gSyz'hh$L.o+[
/^d&@HF;S#}0 备份:backup database 数据库名 to 备份设备名 with differential [name='备份的名称']
bx@W Dw%Mw0<SPAN style="FONT-SIZE: 18px">backup database MagDb to MagDb_1 defferential</SPAN> |
sp8UtDif%?0 恢复:restore database 数据库名 from 备份设备名 with [norecovery/recovery]51Testing软件测试网`%a8i*TshU^e+y
<SPAN style="FONT-SIZE: 18px">restore database MagDb !It:\9i U/OX0from MagDb_1 F%mU8O }9e,i$Z]Z%|0with file =2, 2d,t%a@_;T'oIU0recovery</SPAN> |
(3)事务日志备份与恢复51Testing软件测试网Dv0J.Y6Y%})x
:N6b}!z S"NCM%`0 只备份最后一次日志备份后所有的事务日志记录,备份时所用的时间和空间更少51Testing软件测试网Le4fX$U-KE6NI0MJhT
+zu8D`;{4Gu9Ss7s9["T0 恢复时,可以指定恢复到某一事务;可以将其恢复到某个破坏性操作执行前的一个事务,这是全库备份和差异备份所不能做到的,但利用日志备份进行恢复时,需 要重新执行日志记录中的修改命令,来恢复数据库中的数据,所以通常恢复的时间较长;先恢复最后一次全库备份,再恢复最后一次差异备份,再顺序恢复最后一次 差异备份以后进行的所有事务日志备份
rO([;c3g.nwA051Testing软件测试网tnm3pt?`备份:backup log 数据库名 to 备份设备名 with init/noinit
1ap)|eWEP&`9Y:hQ0<SPAN style="FONT-SIZE: 18px">backup log DocDb to disk='c:\databak\DocDb_1.bat'</SPAN> |
恢复:restore log 数据库名 from 备份设备名 with [norecovery/recovery]
5yh ]*LYrC Bx0<SPAN style="FONT-SIZE: 18px">restore log DocDb51Testing软件测试网~1q6dN(Ems| from disk='c:\databak\DocDb1.bat'</SPAN> |
(4)文件和文件组备份与恢复
7qNqj8VC$v[D051Testing软件测试网9N;]4cSulq备份某个数据库文件或数据库文件组,必须与事务日志结合才有意义51Testing软件测试网&n1B;]AMY+a f K:v
51Testing软件测试网/{p.sc}xXSz恢复时,使用事务日志,使所有的数据文件恢复到同一个时间点51Testing软件测试网K'^eeClhjt}
51Testing软件测试网n@/ZnuYUZ备份:backup database 数据库名 file='文件的逻辑名称'(filegroup) to 备份设备名 with init/noinit51Testing软件测试网 ~T(ioWa;e
<SPAN style="FONT-SIZE: 18px">backup database DocDb51Testing软件测试网V3Q)?Q,X:K#{1Q] file='DocDb_Data'51Testing软件测试网 t`^%W;k0T;|f z1o to disk='c:\databak\Docfile1.dat'</SPAN> |
o#D7HVG{!lW0 恢复:restore database 数据库名 file='文件的逻辑名称'(filegroup) from 备份设备名