国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

數(shù)據(jù)庫(kù)的恢復(fù)技術(shù)探析

2012-02-27 04:55趙文海趙祥敏
中國(guó)科技縱橫 2012年2期
關(guān)鍵詞:磁盤事務(wù)日志

趙文海 趙祥敏

摘要:文章概述了數(shù)據(jù)庫(kù)恢復(fù)技術(shù)的種類,介紹了數(shù)據(jù)庫(kù)發(fā)生故障時(shí)常見的恢復(fù)方法,同時(shí)針對(duì)不同的失效類型提出了恢復(fù)對(duì)策,以供參考。

關(guān)鍵詞:數(shù)據(jù)庫(kù)恢復(fù)方法

1、前言

數(shù)據(jù)庫(kù)的失效往往導(dǎo)致一個(gè)機(jī)構(gòu)的癱瘓,然而,任何一個(gè)數(shù)據(jù)庫(kù)系統(tǒng)總不可能不發(fā)生故障。數(shù)據(jù)庫(kù)系統(tǒng)對(duì)付故障有兩種辦法:其一是盡可能提高系統(tǒng)的可靠性;另一種方法是在系統(tǒng)發(fā)生故障后,把數(shù)據(jù)庫(kù)恢復(fù)至原來的狀態(tài)。

2、恢復(fù)技術(shù)的種類

2.1 單純以北方為基礎(chǔ)的恢復(fù)技術(shù)

單純以備份為基礎(chǔ)的恢復(fù)技術(shù)是由文件系統(tǒng)恢復(fù)技術(shù)演變而來的,即周期性地把磁盤上的數(shù)據(jù)庫(kù)復(fù)制或轉(zhuǎn)儲(chǔ)到磁帶上。由于磁帶是脫機(jī)存放的,系統(tǒng)對(duì)它沒有任何影響。當(dāng)數(shù)據(jù)庫(kù)失效時(shí),可以取最近一次從磁盤復(fù)制到磁帶上的數(shù)據(jù)庫(kù)備份來恢復(fù)數(shù)據(jù)庫(kù)。利用這種方法,數(shù)據(jù)庫(kù)只能恢復(fù)到最近的備份狀態(tài),而從最近備份到故障發(fā)生期間所有數(shù)據(jù)庫(kù)的更新數(shù)據(jù)將會(huì)丟失,這意味著備份周期越長(zhǎng),丟失更新的數(shù)據(jù)也就越多。因此,這種恢復(fù)技術(shù)只適用于小型和不太重要的數(shù)據(jù)庫(kù)系統(tǒng)。

2.2 以備份和運(yùn)行日志為基礎(chǔ)的恢復(fù)技術(shù)

系統(tǒng)運(yùn)行日志用于記錄數(shù)據(jù)庫(kù)運(yùn)行的情況,一般包括三個(gè)內(nèi)容:前像、后像和事物狀態(tài)。

所謂前像是指數(shù)據(jù)庫(kù)被一個(gè)事物更新時(shí),所涉及的物理塊更新后的影像,它以物理塊為單位。前像在恢復(fù)中所起的作用是幫助數(shù)據(jù)庫(kù)恢復(fù)更新前的狀態(tài),即撤銷更新。后像恰好與前像相反,它是當(dāng)數(shù)據(jù)庫(kù)被某一事物更新時(shí),所涉及的物理塊更新前的影像,其單位和前像一樣以物理塊為單位。后像的作用是幫助數(shù)據(jù)庫(kù)恢復(fù)到更新后在狀態(tài),相當(dāng)于重做一次更新。運(yùn)行日志中的事物狀態(tài)記錄每個(gè)事物的狀態(tài),以便在數(shù)據(jù)庫(kù)恢復(fù)時(shí)作不同的處理。

2.3 基于多備份的恢復(fù)技術(shù)

多備份恢復(fù)技術(shù)的前提的每個(gè)備份必須具有獨(dú)立的失效模式,這樣可以利用這些備份互為備份,用于恢復(fù)。所謂獨(dú)立失效模式是指各個(gè)備份不至于因同一故障而一起失效。獲得獨(dú)立失效模式的一個(gè)重要要素是各備份的支持環(huán)境盡可能地獨(dú)立,其中包括不共用電源、磁盤、控制器以及CPU等。在部分可靠要求較高的系統(tǒng)中,采用磁盤鏡像技術(shù),即數(shù)據(jù)庫(kù)以雙備份的形式存放在兩個(gè)獨(dú)立的磁盤系統(tǒng)中,為了使失效模式獨(dú)立,兩個(gè)磁盤系統(tǒng)有各自的控制器和CPU,但彼此可以相互切換。在讀數(shù)據(jù)時(shí),可以選讀其中任一磁盤;在寫數(shù)據(jù)時(shí),兩個(gè)磁盤都可以寫入同樣的內(nèi)容。當(dāng)一個(gè)磁盤數(shù)據(jù)丟失時(shí),可用另一個(gè)磁盤的數(shù)據(jù)來恢復(fù)。

這種恢復(fù)技術(shù)在分布式數(shù)據(jù)庫(kù)系統(tǒng)中用得較多,這完全是出于性能或其他考慮,在不同的結(jié)點(diǎn)上設(shè)有數(shù)據(jù)備份,而這些數(shù)據(jù)備份由于所處的結(jié)點(diǎn)不同,其失效模式也比較獨(dú)立。

3、恢復(fù)的方法

數(shù)據(jù)庫(kù)的恢復(fù)大致有以下幾種方法:

(1)以周期性地對(duì)整個(gè)數(shù)據(jù)庫(kù)進(jìn)行轉(zhuǎn)儲(chǔ),把它復(fù)制到備份介質(zhì)中,作為后備副本,以備恢復(fù)之用。

轉(zhuǎn)儲(chǔ)通常又可分為精通轉(zhuǎn)儲(chǔ)和動(dòng)態(tài)轉(zhuǎn)儲(chǔ)。靜態(tài)轉(zhuǎn)儲(chǔ)是指轉(zhuǎn)儲(chǔ)期間不允許(或不存在)對(duì)數(shù)據(jù)庫(kù)進(jìn)行任何存取、修改活動(dòng),而動(dòng)態(tài)轉(zhuǎn)儲(chǔ)是指在存儲(chǔ)期間允許對(duì)數(shù)據(jù)庫(kù)進(jìn)行存取或修改。

(2)對(duì)數(shù)據(jù)庫(kù)的每次修改,都記下修改前后的值,寫入“運(yùn)行日志”中,與后備副本結(jié)合,可有效地恢復(fù)數(shù)據(jù)庫(kù)。

日志文件是用來記錄數(shù)據(jù)庫(kù)每一次更新活動(dòng)的文件。在動(dòng)態(tài)轉(zhuǎn)儲(chǔ)方式中必須建立日志文件,后備文件副本和日志文件綜合起來才能有效地恢復(fù)數(shù)據(jù)庫(kù)。在靜態(tài)轉(zhuǎn)儲(chǔ)方式中,也可以建立日志文件。當(dāng)數(shù)據(jù)庫(kù)毀壞后可重新裝入后備副本把數(shù)據(jù)庫(kù)恢復(fù)到轉(zhuǎn)儲(chǔ)結(jié)束時(shí)刻的正確狀態(tài)。然后利用日志文件,把已完成的事務(wù)進(jìn)行重新處理,對(duì)故障發(fā)生時(shí)尚未完成的事務(wù)進(jìn)行撤銷處理。這樣不必重新運(yùn)行那些已完成的事務(wù)程序就可以把數(shù)據(jù)庫(kù)恢復(fù)到故障前某一時(shí)刻的正確狀態(tài)。

4、失效的類型及恢復(fù)的對(duì)策

一個(gè)數(shù)據(jù)庫(kù)恢復(fù)方法的恢復(fù)能力總是有限的,一般往往只對(duì)某一類型的失效有效,在任何情況下都適用的恢復(fù)方法是沒有的。在前述的恢復(fù)方法中都需要備份,如果備份由于不可抗拒的因素?fù)p壞,那么,前述的恢復(fù)方法就無能為力。通常的恢復(fù)方法都是針對(duì)概率較高的失效,這些失效分為三類:事務(wù)失效、系統(tǒng)失效和介質(zhì)失效。

4.1 事務(wù)失效

事務(wù)失效發(fā)生在事務(wù)提交之前,事務(wù)一旦提交,即使要撤銷也不可能了。造成事務(wù)失效的原因主要有以下幾個(gè)方面:(1)事務(wù)無法執(zhí)行而自行中止;(2)操作失誤或改變主意而要求撤銷事務(wù);(3)由于系統(tǒng)調(diào)度上的原因而中止某些事務(wù)的執(zhí)行。

對(duì)于事務(wù)失效,可采取如下措施予以恢復(fù):(1)消息管理丟棄該事務(wù)的消息隊(duì)列;(2)如果需要可進(jìn)行撤銷;(3)從事務(wù)表中刪除該事務(wù)的事務(wù)標(biāo)識(shí),釋放該事務(wù)占有的資源。

4.2 系統(tǒng)失效

這里所指的系統(tǒng)包括操作系統(tǒng)和數(shù)據(jù)庫(kù)管理系統(tǒng)。系統(tǒng)失效是指系統(tǒng)崩潰,必須重新啟動(dòng)系統(tǒng),內(nèi)存中的數(shù)據(jù)可能丟失,而數(shù)據(jù)庫(kù)中的數(shù)據(jù)未遭到破壞。發(fā)生系統(tǒng)失效的原因有:(1)掉電;(2)除數(shù)據(jù)庫(kù)存儲(chǔ)介質(zhì)外的硬、軟件故障;(3)重新啟動(dòng)操作系統(tǒng)和數(shù)據(jù)庫(kù)管理系統(tǒng);(4)恢復(fù)數(shù)據(jù)庫(kù)至一致狀態(tài)時(shí),對(duì)未提交的事務(wù)進(jìn)行了Undo操作,對(duì)已提交的事務(wù)進(jìn)行了Redo的操作。

4.3 介質(zhì)失效

介質(zhì)失效是指磁盤發(fā)生故障,數(shù)據(jù)受損,如劃盤、磁頭破損等?,F(xiàn)代的DBMS對(duì)介質(zhì)失效一般都提供恢復(fù)數(shù)據(jù)庫(kù)至最近狀態(tài)的措施,具體過程如下:(1)恢復(fù)系統(tǒng),必要時(shí)更換磁盤;(2)如果系統(tǒng)崩潰,則重新啟動(dòng)系統(tǒng);(3)加載最近的備份;(4)用運(yùn)行日志中的后像重做,去最近備份以后提交的所有事務(wù)。

從介質(zhì)失效中恢復(fù)數(shù)據(jù)庫(kù)的代價(jià)是最高的,而且要是運(yùn)行日志提供所有事務(wù)的后像,工作量很大。但是為了保證數(shù)據(jù)庫(kù)的安全,這些代價(jià)又是必須要付出的。

參考文獻(xiàn)

[1]婁燕飛,楊樹強(qiáng).《一種基于組通信的復(fù)制數(shù)據(jù)庫(kù)在線恢復(fù)策略研究》.計(jì)算機(jī)研究與發(fā)展,2007.

[2]林烈青.《基于事務(wù)日志的數(shù)據(jù)庫(kù)恢復(fù)機(jī)制研究》.現(xiàn)代計(jì)算機(jī)(專業(yè)版),2009.

猜你喜歡
磁盤事務(wù)日志
基于分布式事務(wù)的門架數(shù)據(jù)處理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
一名老黨員的工作日志
扶貧日志
河湖事務(wù)
修改磁盤屬性
游學(xué)日志
磁盤組群組及iSCSI Target設(shè)置
創(chuàng)建VSAN群集
一種基于粗集和SVM的Web日志挖掘模型
SQLServer自治事務(wù)實(shí)現(xiàn)方案探析
汾西县| 茶陵县| 新和县| 青海省| 葫芦岛市| 孝义市| 宾川县| 绥棱县| 朔州市| 合江县| 大同市| 西峡县| 澎湖县| 望都县| 信宜市| 长白| 平山县| 普兰店市| 高安市| 炎陵县| 宜城市| 宜宾市| 乐至县| 潞西市| 宜都市| 杭锦后旗| 阳高县| 会宁县| 宁南县| 华安县| 武威市| 铁力市| 临猗县| 镇巴县| 嵊泗县| 文化| 新干县| 祁东县| 灵台县| 新闻| 青海省|