[转载]oracle热备份的原理
<p>信息来源: IT168</p><p /><div id="6">在我们alter tablespace users begin backup 的时候是锁定了users表空间对应的数据文件头的change scn。 <br /> 首先考虑一下数据库怎么用日志文件做恢复:查找不一致的数据文件(根据文件头中旧的scn) <br /> 如果锁定了文件头,这个文件头中的scn就不会改变(当然了数据块还是会变化的,还可以做读写)。 然后就会应用这个scn到现在的日志。 <br /> 那我锁定了scn,不管你后边怎么修改,总之做恢复的时候是应用锁定的时候的scn一直到现在的日志(完全恢复的话) <p /><p /><div id="2"> <strong>举个例子:</strong></div><p /><p /><div id="3"> a,b两个数据文件,把a置于备份模式,b正常 <br /> 这时候两个change scn都是100,然后开始备份。这期间有数据库的修改,备份完成的时候,Scn变成了200。但是由于a的备份模式,所以a的文件头中记录的scn还是100,b是200。某个时间,假设scn 500,这时候a丢失copy回a的备份,然后recover,完全恢复的话数据库就应用100—500这段的日志,自然也就不会丢失数据了。</div><p /><p /><div id="4"> 因为不管在我copy备份的过程中你做什么操作,总之都在锁定的时change scn之后,所以应用的日志就不会有遗漏了。这时候应该能理解为什么要数据库处于archived模式了</div><p /><p /><div id="5"> 看看数据文件头的change scn</div><p /><div style="SCROLLBAR-HIGHLIGHT-COLOR: buttonhighlight; OVERFLOW: auto; WIDTH: 500px"><pre style="BORDER-RIGHT: black 1px solid; PADDING-RIGHT: 4px; BORDER-TOP: black 1px solid; PADDING-LEFT: 4px; PADDING-BOTTOM: 4px; BORDER-LEFT: black 1px solid; PADDING-TOP: 4px; BORDER-BOTTOM: black 1px solid; BACKGROUND-COLOR: #ededed"><div id="6"><div><!--
Code highlighting produced by Actipro CodeHighlighter (freeware)
[url]http://www.CodeHighlighter.com/[/url]
--><img src="http://cms.it168.com/Images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #000000">SQL</span><span style="COLOR: #808080">></span><span style="COLOR: #0000ff">select</span><span style="COLOR: #000000"> NAME,TABLESPACE_NAME,STATUS,CHECKPOINT_CHANGE# </span><span style="COLOR: #0000ff">from</span><span style="COLOR: #000000"> v$datafile_header;
<img src="http://cms.it168.com/Images/OutliningIndicators/None.gif" align="top" />NAME TABLESPACE STATUS CHECKPOINT_CHANGE#
<img src="http://cms.it168.com/Images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #008080">--</span><span style="COLOR: #008080">------------------------------ ---------- -------------- ------------------ </span><span style="COLOR: #008080">
<img src="http://cms.it168.com/Images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">u02</span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">oradata</span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">sales</span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">system01.dbf SYSTEM ONLINE </span><span style="FONT-WEIGHT: bold; COLOR: #800000">545926</span><span style="COLOR: #000000">
<img src="http://cms.it168.com/Images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">u02</span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">oradata</span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">sales</span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">undotbs01.dbf UNDOTBS1 ONLINE </span><span style="FONT-WEIGHT: bold; COLOR: #800000">545926</span><span style="COLOR: #000000">
<img src="http://cms.it168.com/Images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">u02</span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">oradata</span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">sales</span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">sysaux01.dbf SYSAUX ONLINE </span><span style="FONT-WEIGHT: bold; COLOR: #800000">545926</span><span style="COLOR: #000000">
<img src="http://cms.it168.com/Images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">u02</span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">oradata</span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">sales</span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">users01.dbf USERS ONLINE </span><span style="FONT-WEIGHT: bold; COLOR: #800000">545498</span><span style="COLOR: #000000">
<img src="http://cms.it168.com/Images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">u02</span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">oradata</span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">sales</span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">example01.dbf EXAMPLE ONLINE </span><span style="FONT-WEIGHT: bold; COLOR: #800000">545926</span><span style="COLOR: #000000">
<img src="http://cms.it168.com/Images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">u02</span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">oradata</span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">sales</span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">perfstat.dbf PERFSTAT ONLINE </span><span style="FONT-WEIGHT: bold; COLOR: #800000">545926</span><span style="COLOR: #000000">
<img src="http://cms.it168.com/Images/OutliningIndicators/None.gif" align="top" />
<img src="http://cms.it168.com/Images/OutliningIndicators/None.gif" align="top" /></span><span style="FONT-WEIGHT: bold; COLOR: #800000">6</span><span style="COLOR: #000000"> rows selected.</span></div>
</div></pre></div><p /><div id="7"> 显然,在将users表空间置于backup状态的时候,相应的datafile的文件头的scn就不会再发生改变,发生检查点也不会改变。 </div><p /><p /><div id="8"> 下面end backup,看看scn </div><p /><div style="SCROLLBAR-HIGHLIGHT-COLOR: buttonhighlight; OVERFLOW: auto; WIDTH: 500px"><pre style="BORDER-RIGHT: black 1px solid; PADDING-RIGHT: 4px; BORDER-TOP: black 1px solid; PADDING-LEFT: 4px; PADDING-BOTTOM: 4px; BORDER-LEFT: black 1px solid; PADDING-TOP: 4px; BORDER-BOTTOM: black 1px solid; BACKGROUND-COLOR: #ededed"><div id="9">
<div><!--
Code highlighting produced by Actipro CodeHighlighter (freeware)
[url]http://www.CodeHighlighter.com/[/url]
--><img src="http://cms.it168.com/Images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #000000">SQL</span><span style="COLOR: #808080">></span><span style="COLOR: #000000"></span><span style="COLOR: #0000ff">alter</span><span style="COLOR: #000000"> tablespace users </span><span style="COLOR: #0000ff">end</span><span style="COLOR: #000000"></span><span style="COLOR: #0000ff">backup</span><span style="COLOR: #000000">;
<img src="http://cms.it168.com/Images/OutliningIndicators/None.gif" align="top" />Tablespace altered.
<img src="http://cms.it168.com/Images/OutliningIndicators/None.gif" align="top" />
<img src="http://cms.it168.com/Images/OutliningIndicators/None.gif" align="top" />SQL</span><span style="COLOR: #808080">></span><span style="COLOR: #000000"></span><span style="COLOR: #0000ff">alter</span><span style="COLOR: #000000"> system </span><span style="COLOR: #0000ff">checkpoint</span><span style="COLOR: #000000">;
<img src="http://cms.it168.com/Images/OutliningIndicators/None.gif" align="top" />System altered.
<img src="http://cms.it168.com/Images/OutliningIndicators/None.gif" align="top" />
<img src="http://cms.it168.com/Images/OutliningIndicators/None.gif" align="top" />SQL</span><span style="COLOR: #808080">></span><span style="COLOR: #0000ff">select</span><span style="COLOR: #000000"> NAME,TABLESPACE_NAME,STATUS,CHECKPOINT_CHANGE# </span><span style="COLOR: #0000ff">from</span><span style="COLOR: #000000"> v$datafile_header;
<img src="http://cms.it168.com/Images/OutliningIndicators/None.gif" align="top" />
<img src="http://cms.it168.com/Images/OutliningIndicators/None.gif" align="top" />NAME TABLESPACE STATUS CHECKPOINT_CHANGE#
<img src="http://cms.it168.com/Images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #008080">--</span><span style="COLOR: #008080">------------------------------ ---------- -------------- ------------------ </span><span style="COLOR: #008080">
<img src="http://cms.it168.com/Images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">u02</span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">oradata</span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">sales</span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">system01.dbf SYSTEM ONLINE </span><span style="FONT-WEIGHT: bold; COLOR: #800000">546467</span><span style="COLOR: #000000">
<img src="http://cms.it168.com/Images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">u02</span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">oradata</span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">sales</span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">undotbs01.dbf UNDOTBS1 ONLINE </span><span style="FONT-WEIGHT: bold; COLOR: #800000">546467</span><span style="COLOR: #000000">
<img src="http://cms.it168.com/Images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">u02</span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">oradata</span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">sales</span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">sysaux01.dbf SYSAUX ONLINE </span><span style="FONT-WEIGHT: bold; COLOR: #800000">546467</span><span style="COLOR: #000000">
<img src="http://cms.it168.com/Images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">u02</span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">oradata</span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">sales</span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">users01.dbf USERS ONLINE </span><span style="FONT-WEIGHT: bold; COLOR: #800000">546467</span><span style="COLOR: #000000">
<img src="http://cms.it168.com/Images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">u02</span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">oradata</span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">sales</span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">example01.dbf EXAMPLE ONLINE </span><span style="FONT-WEIGHT: bold; COLOR: #800000">546467</span><span style="COLOR: #000000">
<img src="http://cms.it168.com/Images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">u02</span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">oradata</span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">sales</span><span style="COLOR: #808080">/</span><span style="COLOR: #000000">perfstat.dbf PERFSTAT ONLINE </span><span style="FONT-WEIGHT: bold; COLOR: #800000">546467</span><span style="COLOR: #000000">
<img src="http://cms.it168.com/Images/OutliningIndicators/None.gif" align="top" />
<img src="http://cms.it168.com/Images/OutliningIndicators/None.gif" align="top" /></span><span style="FONT-WEIGHT: bold; COLOR: #800000">6</span><span style="COLOR: #000000"> rows selected.</span></div>
</div></pre></div><div id="ParagraphCount" style="DISPLAY: none">9</div></div>
页:
[1]
