數(shù)據(jù)庫恢復(fù)技術(shù)研究_第1頁
數(shù)據(jù)庫恢復(fù)技術(shù)研究_第2頁
數(shù)據(jù)庫恢復(fù)技術(shù)研究_第3頁
數(shù)據(jù)庫恢復(fù)技術(shù)研究_第4頁
數(shù)據(jù)庫恢復(fù)技術(shù)研究_第5頁
已閱讀5頁,還剩63頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、重慶郵電大學(xué)移通學(xué)院畢業(yè)設(shè)計(jì)(論文)任務(wù)書設(shè)計(jì)(論文)題目 數(shù)據(jù)庫恢復(fù)技術(shù)研究 學(xué)生姓名 殷圣林 系別 計(jì)算機(jī) 專業(yè) 網(wǎng)絡(luò)工程 班級(jí) 02120801 指導(dǎo)教師 翟喜成 職稱 副教授 聯(lián)系電話 教師單位重慶郵電大學(xué)移通學(xué)院計(jì)算機(jī)系下任務(wù)日期_2012_年_1_月_7_日 主 要 研 究 內(nèi) 容 、 方 法 和 要 求研究內(nèi)容:1數(shù)據(jù)庫中的幾種故障類型。2.數(shù)據(jù)庫恢復(fù)的基本概念和意義。3數(shù)據(jù)庫恢復(fù)的方法和備份。4數(shù)據(jù)庫恢復(fù)的優(yōu)化。研究方法:1、先自己看一下數(shù)據(jù)庫故障類型及其產(chǎn)生原理原因。咨詢導(dǎo)師研究方向及著重點(diǎn)。2、對(duì)設(shè)計(jì)題目進(jìn)行深入分析,規(guī)劃好設(shè)計(jì)的入手點(diǎn)和方向。 3、在老師的指導(dǎo)下,完成課題

2、設(shè)計(jì)的初步提綱。4、繼續(xù)深入閱讀學(xué)習(xí),掌握相關(guān)概念,完成論文的總體概況。5、進(jìn)一步對(duì)課題進(jìn)行實(shí)施,和完善! 要求:實(shí)現(xiàn)數(shù)據(jù)庫丟失數(shù)據(jù)的恢復(fù)。 進(jìn) 度 計(jì) 劃第4周第8周:查詢資料,對(duì)相關(guān)的資料進(jìn)行學(xué)習(xí)和理解;第9周第11周:著手對(duì)課題進(jìn)行編寫實(shí)驗(yàn),并分析相關(guān)實(shí)驗(yàn)的結(jié)果;第12周第13周:分析結(jié)果,總結(jié)并撰寫畢業(yè)論文第14周第15周:修改并完善論文,在對(duì)論文進(jìn)行整體的整合準(zhǔn)備答辯。 主 要 參 考 文 獻(xiàn)1 王珊 薩師煊 著 數(shù)據(jù)庫系統(tǒng)概論(第四版)高等教育出版社 20062 何玉潔 李寶安編著 數(shù)據(jù)庫系統(tǒng)教程 人民郵電出版社 20103 苗雪蘭等:數(shù)據(jù)庫系統(tǒng)原理及應(yīng)用(第三版),機(jī)械工業(yè)出版社

3、,2009指導(dǎo)教師簽字: 2012年 月 日教研室主任簽字: 2012年 月 日【摘要】信息技術(shù)不斷革新不斷發(fā)展的今天,計(jì)算機(jī)技術(shù)已經(jīng)應(yīng)用到各個(gè)領(lǐng)域,在一切以信息為交流基礎(chǔ)的現(xiàn)在,數(shù)據(jù)庫技術(shù)發(fā)揮了巨大的作用,所有數(shù)字信息的存儲(chǔ)依賴于數(shù)據(jù)庫技術(shù),在當(dāng)今的信息時(shí)代,數(shù)據(jù)的安全顯得尤為重要,因此研究數(shù)據(jù)丟失,預(yù)防方法及其恢復(fù)技術(shù)就成為一個(gè)重要的課題。而數(shù)據(jù)庫恢復(fù)功能就是數(shù)據(jù)庫安全至關(guān)重要的功能。數(shù)據(jù)庫恢復(fù)技術(shù)是一種被動(dòng)的保護(hù)方法,而數(shù)據(jù)庫完整性、安全性及并發(fā)控制則是主動(dòng)的保護(hù)方法,這兩種方法的有機(jī)結(jié)合才能使數(shù)據(jù)庫得到有效保護(hù)。 然而實(shí)際應(yīng)用中數(shù)據(jù)庫的安全總是面臨著很多的威脅(硬件故障、網(wǎng)絡(luò)故障、進(jìn)程

4、故障和系統(tǒng)故障)影響著數(shù)據(jù)的安全。而當(dāng)數(shù)據(jù)庫在發(fā)生以上諸多因素導(dǎo)致的故障后,我們就需要能夠重建數(shù)據(jù)庫,恢復(fù)數(shù)據(jù)庫中的信息,這種技術(shù)就叫數(shù)據(jù)庫恢復(fù)技術(shù)。 本論文設(shè)計(jì)就是圍繞數(shù)據(jù)庫恢復(fù)技術(shù)的研究,設(shè)計(jì)主體研究規(guī)劃是先熟悉了解數(shù)據(jù)庫原理,了解數(shù)據(jù)庫工作機(jī)制,預(yù)測數(shù)據(jù)庫工作中可能發(fā)生的數(shù)據(jù)故障,深入了解學(xué)習(xí)數(shù)據(jù)庫故障機(jī)制,再對(duì)數(shù)據(jù)庫恢復(fù)技術(shù)深入研究,最后再分析恢復(fù)結(jié)果完善設(shè)計(jì)!【關(guān)鍵詞】數(shù)據(jù)安全,數(shù)據(jù)庫恢復(fù),數(shù)據(jù)丟失,數(shù)據(jù)庫【Abstract】At this Information technology innovation development of today , Computer techno

5、logy has been used in various fields ,In all the information for the exchange basis now ,Database technology play a impotent role , All digital information storage dependent on database technology, In the modern era of information, Data security is particularly important, so the data loss, preventio

6、n and recovery technology is becoming a very important issue. And the database recovery function is the database security crucial functions. Restore database technology is a kind of passive protection method, and the database integrity, security and the concurrent control is active protection method

7、, the two methods of the organic combination of the database can be effectively protected.But in actual application of the database security is always faced with a lot of threat (hardware failure, network fault, process and system fault fault) affect the safety of the data. And when the database in

8、the above factors lead to happen after the failure, we need to restore the database, restore the information in the database, this technology is called database recovery technology.This paper is designed around database recovery technology research, design subject research planning is to be familiar

9、 with the database first principle, understand the database working mechanism, prediction database work to happen in fault data, understand learning database failure mechanism, and then a database recovery technology research, and finally to analysis the recovery design perfect !【 key words 】 Data s

10、ecurity;DataBase recovery;Data loss;DataBase目 錄 TOC o 1-3 h z u HYPERLINK l _Toc324408294 前 言1 HYPERLINK l _Toc324408295 第1章 數(shù)據(jù)庫恢復(fù)的概述2 HYPERLINK l _Toc324408296 1.1 數(shù)據(jù)庫復(fù)的概述2 HYPERLINK l _Toc324408297 1.2 數(shù)據(jù)庫系統(tǒng)的概念2 數(shù)據(jù)庫(Data Base) 、數(shù)據(jù) HYPERLINK l _Toc324408298 3 HYPERLINK l _Toc324408299 1.2.2 數(shù)據(jù)庫管理系統(tǒng)

11、(DataBase Management System ,DBMS)3 HYPERLINK l _Toc324408300 1.2.3 數(shù)據(jù)庫系統(tǒng)和數(shù)據(jù)庫管理員4 HYPERLINK l _Toc324408301 1.3 數(shù)據(jù)模型15 HYPERLINK l _Toc324408302 1.4 數(shù)據(jù)庫系統(tǒng)模式的概念8 HYPERLINK l _Toc324408303 內(nèi)模式(Internal Schema)9 HYPERLINK l _Toc324408304 1.4.2 模式(Schema)9 HYPERLINK l _Toc324408305 外模式(External Schema)1

12、0 HYPERLINK l _Toc324408306 1.5 本章小結(jié)13 HYPERLINK l _Toc324408307 第2章 事務(wù)的相關(guān)概念和故障的種類13 HYPERLINK l _Toc324408308 2.1 事務(wù)的基本概念13 HYPERLINK l _Toc324408309 2.1.1 事務(wù)的基本概念13 HYPERLINK l _Toc324408310 2.1.2 如何定義事務(wù)13 HYPERLINK l _Toc324408311 2.1.3 事務(wù)的特性142.2 故障8的種 HYPERLINK l _Toc324408312 類15 HYPERLINK l _

13、Toc324408313 2.2.1 事務(wù)故障16 HYPERLINK l _Toc324408314 2.2.2 系統(tǒng)故障17 HYPERLINK l _Toc324408315 2.2.3 介質(zhì)故障17 HYPERLINK l _Toc324408316 2.2.4 計(jì)算機(jī)病毒18 HYPERLINK l _Toc324408317 2.3 本章小結(jié)18 HYPERLINK l _Toc324408318 第3章 數(shù)據(jù)恢復(fù)的實(shí)現(xiàn)技術(shù)19 HYPERLINK l _Toc324408319 3.1 數(shù)據(jù)庫恢復(fù)的基本原理19 HYPERLINK l _Toc324408320 3.2 數(shù)據(jù)轉(zhuǎn)儲(chǔ)

14、與恢復(fù)193.2.1 靜態(tài)轉(zhuǎn)儲(chǔ) HYPERLINK l _Toc324408321 20 HYPERLINK l _Toc324408322 3.2.2 動(dòng)態(tài)轉(zhuǎn)儲(chǔ)20 HYPERLINK l _Toc324408323 3.3 海量轉(zhuǎn)儲(chǔ)和增量轉(zhuǎn)儲(chǔ)22 HYPERLINK l _Toc324408324 3.4 登記日志文件22 HYPERLINK l _Toc324408325 日志文件的內(nèi)容22 HYPERLINK l _Toc324408326 日志文件的用途23 HYPERLINK l _Toc324408328 記日志文件的原則24 HYPERLINK l _Toc324408329

15、3.5 數(shù)據(jù)庫恢復(fù)新技術(shù)25 HYPERLINK l _Toc324408330 SQL Server 數(shù)據(jù)庫逆向重建技術(shù)25 HYPERLINK l _Toc324408331 ORACLE恢復(fù)方法27 HYPERLINK l _Toc324408332 3.5.3 數(shù)據(jù)庫在歸檔模式下的完全恢復(fù)33 HYPERLINK l _Toc324408333 3.6 本章小結(jié)37 HYPERLINK l _Toc324408334 第4章 數(shù)據(jù)庫恢復(fù)的策略38 HYPERLINK l _Toc324408335 4.1 備份的策略38 HYPERLINK l _Toc324408336 4.1.1

16、備份內(nèi)容38 HYPERLINK l _Toc324408337 備份頻率40 HYPERLINK l _Toc324408338 4.1.3 制定備份計(jì)劃41 HYPERLINK l _Toc324408339 4.1.4 備份的其它細(xì)節(jié)43 HYPERLINK l _Toc324408340 4.2 恢復(fù)策略43 HYPERLINK l _Toc324408341 4.3 災(zāi)難備份49 HYPERLINK l _Toc324408342 4.4 本章小結(jié)51 HYPERLINK l _Toc324408343 結(jié) 束 語52 HYPERLINK l _Toc324408344 致 謝53

17、HYPERLINK l _Toc324408345 參考文獻(xiàn)54 HYPERLINK l _Toc324408346 附 件55 HYPERLINK l _Toc324408347 一、英文原文55 HYPERLINK l _Toc324408348 二、中文翻譯59前 言在過去的10多年間,互聯(lián)網(wǎng)市場發(fā)生不少災(zāi)難性事件,如海底光纜中斷,黑客攻擊和病毒肆虐等。以下為具有代表性的7大互聯(lián)網(wǎng)災(zāi)難:1. 2000年2月,雅虎、CNN、亞馬遜和eBay等大量知名網(wǎng)站遭遇DDoS攻擊2. 2001年7月,紅色代碼(Code Red)蠕蟲攻擊大量網(wǎng)絡(luò)服務(wù)器,數(shù)十萬臺(tái)服務(wù)器被感染。3. 2003年1月,SQ

18、L Slammer蠕蟲瘋狂肆虐,大量系統(tǒng)被感染。4. 2004年12月24日土耳其ISP(互聯(lián)網(wǎng)服務(wù)提供商)劫持整個(gè)互聯(lián)網(wǎng)。5. 2006年12月26日,中國臺(tái)灣地震導(dǎo)致亞洲海底光纜通信中斷,修復(fù)工作持續(xù)了1個(gè)多月。6. 2007年7月24日,舊金山數(shù)據(jù)中心停電導(dǎo)致大量網(wǎng)站無法訪問。7. 2008年1月至2月,地中海海底光纜中斷。這些事件直接間接導(dǎo)致了數(shù)據(jù)庫1遭到破壞由于各方面的原因,數(shù)據(jù)庫恢復(fù)技術(shù)起到重要的作用,在信息化時(shí)代,計(jì)算機(jī)數(shù)據(jù)安全16已越來越為人們所關(guān)注,因此研究數(shù)據(jù)丟失的原因、預(yù)防辦法以及數(shù)據(jù)恢復(fù)技術(shù)4越來越顯得重要。數(shù)據(jù)庫恢復(fù)功能是數(shù)據(jù)庫的重要功能。數(shù)據(jù)庫恢復(fù)技術(shù)是一種被動(dòng)的保

19、護(hù)方法,而數(shù)據(jù)庫完整性、安全性及并發(fā)控制則是主動(dòng)的保護(hù)方法,這兩種方法的有機(jī)結(jié)合才能使數(shù)據(jù)庫得到有效保護(hù)。本文設(shè)計(jì)的是數(shù)據(jù)庫恢復(fù)技術(shù)的研究,其主要的特性是研究數(shù)據(jù)丟失的原因,預(yù)防數(shù)據(jù)丟失的方法,恢復(fù)丟失的數(shù)據(jù),讓數(shù)據(jù)庫中的數(shù)據(jù)可以完好的體現(xiàn)給讀者。本論文從體系上分為以下四個(gè)章節(jié):第一章 介紹數(shù)據(jù)庫恢復(fù)的相關(guān)概念。第二章 主要介紹事務(wù)的相關(guān)概念和故障的種類。第三章 介紹了數(shù)據(jù)恢復(fù)的技術(shù)。第四章 介紹了數(shù)據(jù)恢復(fù)的策略。第一章 數(shù)據(jù)庫恢復(fù)的概述 1.1 數(shù)據(jù)庫恢復(fù)6的概述 數(shù)據(jù)庫是一種共享資源,因此,在數(shù)據(jù)庫的使用過程中,保證數(shù)據(jù)的安全可靠,正確可用就成為非常重要的問題,它是有效使用數(shù)據(jù)庫的前提。數(shù)

20、據(jù)庫被破壞的原因可歸納為:1.硬件故障,造成數(shù)據(jù)被破壞。2.數(shù)據(jù)庫的并發(fā)操作引起數(shù)據(jù)的不一致性。3.然或人為地破壞,如失火、失竊、病毒和為授權(quán)人的有意纂改數(shù)據(jù)。4.對(duì)數(shù)據(jù)庫數(shù)據(jù)的更新操作有誤,如操作時(shí)輸入錯(cuò)誤的數(shù)據(jù)或存取數(shù)據(jù)庫的程序有錯(cuò)等等。針對(duì)這四類問題,一般DBMS提供了相應(yīng)的功能:1.數(shù)據(jù)庫恢復(fù):即系統(tǒng)失效后的數(shù)據(jù)庫恢復(fù),配合定時(shí)備份數(shù)據(jù)庫,使數(shù)據(jù)不丟失數(shù)據(jù)。2.并發(fā)控制:即保證多用戶能共享數(shù)據(jù)庫,并維護(hù)數(shù)據(jù)的一致性。3.安全性保護(hù):防止對(duì)數(shù)據(jù)庫的非法使用,以避免數(shù)據(jù)泄漏、纂改、破壞。4.完整性保護(hù):保證數(shù)據(jù)的正確性和一致性。 盡管數(shù)據(jù)庫系統(tǒng)中采取了各種保護(hù)措施來防止數(shù)據(jù)庫的安全性和完整

21、性被破壞,保證并發(fā)事務(wù)的正確執(zhí)行,但是計(jì)算機(jī)系統(tǒng)中硬件的故障、軟件的錯(cuò)誤、操作員的失誤以及惡意的破壞仍是不可避免的,這些故障輕則造成運(yùn)行事務(wù)非正常中斷,影響數(shù)據(jù)庫中數(shù)據(jù)的正確性,重則破壞數(shù)據(jù)庫,使數(shù)據(jù)庫中全部或部分?jǐn)?shù)據(jù)丟失,因此數(shù)據(jù)庫管理系統(tǒng)(恢復(fù)子系統(tǒng))必須具有把數(shù)據(jù)庫從錯(cuò)誤狀態(tài)恢復(fù)到某一已知的正確狀態(tài)(亦稱為一致狀態(tài)或完整狀態(tài))的功能,這就是數(shù)據(jù)庫的恢復(fù)8。1.2 數(shù)據(jù)庫系統(tǒng)的概念 數(shù)據(jù)庫技術(shù)產(chǎn)生于六十年代中期,是計(jì)算機(jī)科學(xué)的重要分支,是計(jì)算機(jī)系統(tǒng)的基礎(chǔ)軟件是信息系統(tǒng)的核心和基礎(chǔ)數(shù)據(jù)庫的建設(shè)規(guī)模、數(shù)據(jù)庫信息量的大小和使用頻度已成為衡量一個(gè)國家信息化程度的重要標(biāo)志; 圖 1.1 數(shù)據(jù)庫在計(jì)算

22、機(jī)系統(tǒng)中的地位 數(shù)據(jù)庫(Data Base) 、數(shù)據(jù)數(shù)據(jù)庫: 存放數(shù)據(jù)的倉庫(長期儲(chǔ)存在計(jì)算機(jī)內(nèi)、有組織的、可共享的大量數(shù)據(jù)的集合);數(shù) 據(jù): 數(shù)據(jù)庫中存儲(chǔ)的基本對(duì)象(描述事物的符號(hào)記錄;種類有:數(shù)字、文本、圖形、圖像、音頻、視頻、學(xué)生的檔案記錄、貨物的運(yùn)輸情況等);盡管數(shù)據(jù)庫技術(shù)已發(fā)展成熟,但還沒有一個(gè)普遍接受的、嚴(yán)格的定義。數(shù)據(jù)庫應(yīng)具備的特征/定義1:(1)數(shù)據(jù)庫是相互關(guān)聯(lián)的數(shù)據(jù)的集合;(2)用綜合的方法組織數(shù)據(jù);(3)具有較小的數(shù)據(jù)冗余,可供多個(gè)用戶共享;(4)具有較高的數(shù)據(jù)獨(dú)立性;(5)具有安全控制機(jī)制,能夠保證數(shù)據(jù)的安全、可靠;(6)允許并發(fā)地使用數(shù)據(jù)庫,能有效、及時(shí)地處理數(shù)據(jù),并能

23、保證數(shù)據(jù)的一致性和完整性; 數(shù)據(jù)庫管理系統(tǒng)(DataBase Management System )上節(jié)提到的數(shù)據(jù)庫的功能/特性不是數(shù)據(jù)庫中的數(shù)據(jù)固有的,是靠管理或支持?jǐn)?shù)據(jù)庫的系統(tǒng)軟件DBMS提供的。DBMS任務(wù):對(duì)數(shù)據(jù)資源進(jìn)行管理,使之能為多個(gè)用戶共享。保證數(shù)據(jù)的安全性/可靠性/完整性/一致性/獨(dú)立性。DBMS功能:1數(shù)據(jù)庫定義功能定義數(shù)據(jù)庫結(jié)構(gòu)和存儲(chǔ)結(jié)構(gòu);定義數(shù)據(jù)庫中數(shù)據(jù)之間的聯(lián)系;定義數(shù)據(jù)完整性約束條件和保證完整性的觸發(fā)機(jī)制等.2數(shù)據(jù)庫操縱功能完成對(duì)數(shù)據(jù)庫中數(shù)據(jù)的操作:插入、刪除、修改;重新組織數(shù)據(jù)庫的存儲(chǔ)結(jié)構(gòu);完成對(duì)數(shù)據(jù)庫的備份/恢復(fù)等。3數(shù)據(jù)庫查詢功能以各種方式提供靈活的查詢功能,以

24、便方便使用數(shù)據(jù)。4數(shù)據(jù)庫控制功能完成對(duì)數(shù)據(jù)庫的安全性控制/完整性控制/并發(fā)控制。5數(shù)據(jù)庫通信功能在分布式數(shù)據(jù)庫或提供網(wǎng)絡(luò)操作功能的數(shù)據(jù)庫中還必須提供通信功能。 數(shù)據(jù)庫系統(tǒng)和數(shù)據(jù)庫管理員1數(shù)據(jù)庫系統(tǒng) (DataBase System,DBS)基于數(shù)據(jù)庫的計(jì)算機(jī)應(yīng)用系統(tǒng),包括:以數(shù)據(jù)為主體的數(shù)據(jù)庫;管理數(shù)據(jù)庫的系統(tǒng)軟件DBMS;支持?jǐn)?shù)據(jù)庫系統(tǒng)的計(jì)算機(jī)硬件環(huán)境和操作系統(tǒng)環(huán)境;數(shù)據(jù)庫的使用會(huì)改變企事業(yè)單位的管理方式,但因?yàn)橐驯姸嗖块T或用戶的數(shù)據(jù)放在同一數(shù)據(jù)庫中,會(huì)帶來一些問題,如:數(shù)據(jù)沖突;越權(quán)使用數(shù)據(jù);重要數(shù)據(jù)丟失 因此需要管理部門:負(fù)責(zé)和數(shù)據(jù)管理有關(guān)的工作。1.3 數(shù)據(jù)模型1模型對(duì)客觀事物、現(xiàn)象

25、、過程或系統(tǒng)的簡化描述所有的數(shù)據(jù)庫系統(tǒng)都為它所要描述的世界建立了模型:圖1.2抽象模型數(shù)據(jù)模型分為兩類:概念模型: 按用戶的觀點(diǎn)對(duì)數(shù)據(jù)和信息建模,用于數(shù)據(jù)庫設(shè)計(jì);概念模型的用途:概念模型用于信息世界的建模;是現(xiàn)實(shí)世界到機(jī)器世界的一個(gè)中間層次;是數(shù)據(jù)庫設(shè)計(jì)的有力工具數(shù)據(jù)庫設(shè)計(jì)人員和用戶之間進(jìn)行交流的語言;對(duì)概念模型的基本要求:較強(qiáng)的語義表達(dá)能力;能夠方便、直接地表達(dá)應(yīng)用中的各種語義知識(shí);簡單、清晰、易于用戶理解;邏輯模型和物理模型 :邏輯模型 按計(jì)算機(jī)系統(tǒng)的觀點(diǎn)對(duì)數(shù)據(jù)建模,用于DBMS實(shí)現(xiàn)。物理模型 對(duì)數(shù)據(jù)最底層的抽象,描述數(shù)據(jù)在系統(tǒng)內(nèi)部的表示方式和存取方法;一信息世界中的基本概念(1)實(shí)體(E

26、ntity):客觀存在并可相互區(qū)別的事物; (2)屬性(Attribute):實(shí)體所具有的某一特性;(3)碼(Key):唯一標(biāo)識(shí)實(shí)體的屬性集;(4)域(Domain):屬性的取值范圍;(5)實(shí)體型(Entity Type):具有相同屬性的實(shí)體,用實(shí)體名及其屬性名集合來抽象和刻畫同類實(shí)體。(6)實(shí)體集:同一類型實(shí)體的集合;如:全體學(xué)生就是一個(gè)實(shí)體集。(7)聯(lián)系(Relationship):反映實(shí)體間的關(guān)系;實(shí)體(型)內(nèi)部的聯(lián)系:指組成實(shí)體的各屬性之間的聯(lián)系。實(shí)體(型)之間的聯(lián)系:指不同實(shí)體集之間的聯(lián)系。二.兩個(gè)實(shí)體型之間的聯(lián)系實(shí)體間的聯(lián)系反映了實(shí)體之間的關(guān)系;兩實(shí)體型間的聯(lián)系方式:一對(duì)一聯(lián)系(1

27、:1) 定義:如果對(duì)于實(shí)體集A中的每一個(gè)實(shí)體。實(shí)體集B中至多有一個(gè)(也可以沒有)實(shí)體與之聯(lián)系,反之亦然,則稱實(shí)體集A與實(shí)體集B有一對(duì)一聯(lián)系。記為1:1 。一對(duì)多聯(lián)系(1:n) 定義:如果對(duì)于實(shí)體集A中的每一個(gè)實(shí)體,實(shí)體集B中有n個(gè)實(shí)體(n0)與之聯(lián)系。反之,對(duì)于實(shí)體集B中的每一個(gè)實(shí)體,實(shí)體集A中至多只有一個(gè)實(shí)體與之聯(lián)系,則稱實(shí)體集A與實(shí)體集B有一對(duì)多聯(lián)系,記為1:n.。多對(duì)多聯(lián)系(m:n) 定義:如果對(duì)于實(shí)體集A中的每一個(gè)實(shí)體,實(shí)體集B中有n個(gè)實(shí)體(n0)與之聯(lián)系。反之,對(duì)于實(shí)體集B中的每一個(gè)實(shí)體,實(shí)體集A中也有m個(gè)實(shí)體(m0)與之聯(lián)系,則稱實(shí)體集A與實(shí)體B具有多對(duì)多聯(lián)系,記為m:n。三概念模

28、型的一種表示方法實(shí)體-聯(lián)系方法(E-R方法)用E-R圖來描述概念模型的最常用方法;E-R方法也稱為E-R模型;實(shí)體:用矩形框表示,框內(nèi)寫明實(shí)體名稱;屬性:用橢圓表示,框內(nèi)寫明屬性名稱,橢圓用線與相應(yīng)的實(shí)體連接。聯(lián)系:用菱形表示,框內(nèi)寫明聯(lián)系名稱,用無向邊與相關(guān)的實(shí)體連接來,并注明聯(lián)系類型(1:1,1:n或m:n)。數(shù)據(jù)模型的三要素1數(shù)據(jù)結(jié)構(gòu)描述數(shù)據(jù)的靜態(tài)特征,包括對(duì)數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)建聯(lián)系的描述。通常按照數(shù)據(jù)結(jié)構(gòu)的類型來命名數(shù)據(jù)模型:層次結(jié)構(gòu)層次模型:用樹型結(jié)構(gòu)表示實(shí)體間聯(lián)系的數(shù)據(jù)模型;網(wǎng)狀結(jié)構(gòu)網(wǎng)狀模型:用有向圖結(jié)構(gòu)表示實(shí)體類型及實(shí)體間聯(lián)系的數(shù)據(jù)模型。關(guān)系結(jié)構(gòu)關(guān)系模型:是由若干個(gè)關(guān)系模式組成的集合

29、,主要特征是用二維表格結(jié)構(gòu)表達(dá)實(shí)體集,用外鍵表示實(shí)體間聯(lián)系。面向?qū)ο竽P停和ㄟ^對(duì)象和類的概念來建立的數(shù)據(jù)庫模型。 2數(shù)據(jù)操作描述數(shù)據(jù)的動(dòng)態(tài)特征:一組定義在數(shù)據(jù)上的操作( 包括操作的含義、操作符、運(yùn)算規(guī)則及其語言等);主要操作:檢索與更新(插入、刪除、修改) 3. 數(shù)據(jù)的約束條件完整性規(guī)則的集合,數(shù)據(jù)庫中的數(shù)據(jù)必須滿足這組規(guī)則。 約束條件的主要目的是使數(shù)據(jù)庫與它所描述的現(xiàn)實(shí)系統(tǒng)相符合。 設(shè)計(jì)時(shí):時(shí)數(shù)據(jù)模型正確、真實(shí)、有效地反映現(xiàn)實(shí);運(yùn)行時(shí):保證數(shù)據(jù)庫中的數(shù)據(jù)值真實(shí)地體現(xiàn)現(xiàn)實(shí)世界的狀態(tài) ;1.4數(shù)據(jù)庫系統(tǒng)模式的概念數(shù)據(jù)庫系統(tǒng)的三級(jí)模式1不僅可以使數(shù)據(jù)具有獨(dú)立性,而且還可以使數(shù)據(jù)達(dá)到共享,使同一數(shù)據(jù)

30、滿足更多用戶的不同要求。數(shù)據(jù)庫系統(tǒng)的三級(jí)模式結(jié)構(gòu) :圖1.3 數(shù)據(jù)庫系統(tǒng)的三級(jí)模式1.4.1 內(nèi)模式(Internal Schema)存儲(chǔ)模式 是數(shù)據(jù)在數(shù)據(jù)庫系統(tǒng)的內(nèi)部表示,即對(duì)數(shù)據(jù)的物理結(jié)構(gòu)/存儲(chǔ)方式的描述,是低級(jí)描述,一般由DBMS提供的語言或工具完成; 要修改存儲(chǔ)數(shù)據(jù)庫的結(jié)構(gòu)(例如,用倒排文件代替多鏈表),那么僅僅需要把這些修改反映在存儲(chǔ)模式中;通常我們不關(guān)心內(nèi)模式的具體技術(shù)實(shí)現(xiàn),而是從一般組;織的觀點(diǎn)(即概念模式)或用戶的觀點(diǎn)(外模式)來討論數(shù)據(jù)庫的描述。但我們必須意識(shí)到基本的內(nèi)模式和存儲(chǔ)數(shù)據(jù)庫的存在。 模式(Schema)邏輯模式是數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特性的描述,是所有用戶的

31、公共數(shù)據(jù)視圖; DBMS提供數(shù)據(jù)定義語言DDL來描述邏輯模式,嚴(yán)格定義數(shù)據(jù)的名稱、特征、相互關(guān)系、約束等。 外模式(External Schema)用戶模式(視圖) 是模式的子集或變形,是與某一應(yīng)用有關(guān)的數(shù)據(jù)的邏輯表示; 不同用戶需求不同,看待數(shù)據(jù)的方式也可以不同,對(duì)數(shù)據(jù)保密的要求也可以不同,使用的程序設(shè)計(jì)語言也可以不同,因此不同用戶的外模式的描述可以使不同的;數(shù)據(jù)庫的二級(jí)映像功能與數(shù)據(jù)獨(dú)立性三級(jí)模式是對(duì)數(shù)據(jù)的三個(gè)抽象級(jí)別,它把數(shù)據(jù)的具體組織留給DBMS管理;二級(jí)映象在DBMS內(nèi)部實(shí)現(xiàn)這三個(gè)抽象層次的聯(lián)系和轉(zhuǎn)換:外模式模式映像;模式內(nèi)模式映像; 圖1.4 數(shù)據(jù)庫二級(jí)映像數(shù)據(jù)庫的二級(jí)映像功能與數(shù)

32、據(jù)獨(dú)立性保證數(shù)據(jù)的邏輯獨(dú)立性當(dāng)模式改變時(shí),數(shù)據(jù)庫管理員修改有關(guān)的外模式/模式映象,使外模式保持不變。應(yīng)用程序是依據(jù)數(shù)據(jù)的外模式編寫的,保證了數(shù)據(jù)與程序的邏輯獨(dú)立性。保證數(shù)據(jù)的物理獨(dú)立性當(dāng)數(shù)據(jù)庫的存儲(chǔ)結(jié)構(gòu)改變了,模式保持不變。應(yīng)用程序不受影響。1.5本章小結(jié) 本章概述了數(shù)據(jù)庫的基本概念,并通過對(duì)數(shù)據(jù)管理進(jìn)展情況的介紹,闡述了數(shù)據(jù)庫技術(shù)產(chǎn)生和發(fā)展的背景,也說明了數(shù)據(jù)庫恢復(fù)的重要性。 數(shù)據(jù)模型是數(shù)據(jù)庫系統(tǒng)的核心和基礎(chǔ)。本章介紹了三種注意的數(shù)據(jù)模型。數(shù)據(jù)庫系統(tǒng)三級(jí)模式和兩層映像的系統(tǒng)結(jié)構(gòu)保證了數(shù)據(jù)庫系統(tǒng)中能夠具有較高的邏輯獨(dú)立性和物理獨(dú)立性。第二章 事務(wù)的相關(guān)概念和故障的種類數(shù)據(jù)庫系統(tǒng)常常允許多個(gè)事務(wù)

33、并發(fā)地執(zhí)行,在數(shù)據(jù)庫管理系統(tǒng)(DBMS)中,事務(wù)管理程序的任務(wù)就是要保證這些事務(wù)全都能正確地執(zhí)行。事務(wù)是數(shù)據(jù)庫恢復(fù)和并發(fā)控制的基本單位,保證事務(wù)的ACID特性是事務(wù)管理程序的重要任務(wù)。2.1事務(wù)的基本概念 事務(wù)的基本概念15事務(wù)(Transaction)是用戶定義的一個(gè)數(shù)據(jù)庫操作序列,這些操作要么全做,要么全不做,是一個(gè)不可分割的工作單位;事務(wù)和程序是兩個(gè)概念:在關(guān)系數(shù)據(jù)庫中,一個(gè)事務(wù)可以是一條SQL語句,一組SQL語句或整個(gè)程序一個(gè)應(yīng)用程序通常包含多個(gè)事務(wù);事務(wù)是恢復(fù)和并發(fā)控制的基本單位。 如何定義事務(wù)顯式定義方式 BEGIN TRANSACTION BEGIN TRANSACTION SQ

34、L 語句1 SQL 語句1: SQL 語句2 SQL 語句2: 。 。 COMMIT ROLLBACKn隱式方式當(dāng)用戶沒有顯式地定義事務(wù)時(shí),DBMS按缺省規(guī)定自動(dòng)劃分事務(wù);事務(wù)結(jié)束:COMMIT;事務(wù)正常結(jié)束: 提交事務(wù)的所有操作(讀+更新);事務(wù)中所有對(duì)數(shù)據(jù)庫的更新永久生效;ROLLBACK;事務(wù)異常終止:n事務(wù)運(yùn)行的過程中發(fā)生了故障,不能繼續(xù)執(zhí)行;回滾事務(wù)的所有更新操作:n事務(wù)滾回到開始時(shí)的狀態(tài); 事務(wù)的特性事務(wù)的ACID特性:原子性(Atomicity);一致性(Consistency);隔離性(Isolation);持續(xù)性(Durability ); (1)原子性(Atomicity)

35、 即事務(wù)執(zhí)行的原子性,事務(wù)“要么不做,要么全做” ,如果事務(wù)因故障沒有完成,則該事務(wù)已做的操作認(rèn)為是無效的,在恢復(fù)時(shí)必須取消該事務(wù)對(duì)數(shù)據(jù)庫的影響。 保證原子性的思路:對(duì)于要執(zhí)行寫操作的數(shù)據(jù)項(xiàng),在磁盤上記錄其舊值,若事務(wù)沒能完成執(zhí)行,舊值將被恢復(fù),好像事務(wù)從未執(zhí)行。 保證原子性是DBMS本身的責(zé)任,由“事務(wù)管理部件”處理。(2)一致性(Consistency) 事務(wù)作用于數(shù)據(jù)庫過程中,數(shù)據(jù)應(yīng)始終滿足完整性約束。 一個(gè)事務(wù)的執(zhí)行是把DB從一個(gè)一致的狀態(tài)阿轉(zhuǎn)換成另一個(gè)一致的狀態(tài)。 確保單個(gè)事務(wù)的一致性是對(duì)該事務(wù)編碼的應(yīng)用,程序元的責(zé)任,完整性給這項(xiàng)工作帶來了便利。(3)隔離性(Isolation)即

36、事務(wù)并發(fā)執(zhí)行的相對(duì)獨(dú)立性,這是事務(wù)并發(fā)控制的目標(biāo)。使事務(wù)并發(fā)執(zhí)行的結(jié)果和某一串行執(zhí)行的結(jié)果相同。即使每個(gè)事務(wù)都能確保C、A,但如幾個(gè)事務(wù)并發(fā)執(zhí)行,它們的操作會(huì)以人們不希望的某種發(fā)式交叉執(zhí)行,也會(huì)導(dǎo)致不一致狀態(tài)。 一種解決方法:串行執(zhí)行事務(wù)(一個(gè)接一個(gè))。 隔離性保證事務(wù)并發(fā)執(zhí)行的結(jié)果和某一串行執(zhí)行的結(jié)果相同。(4)持久性(Durability) DBMS中“恢復(fù)管理部件”的責(zé)任。 完成了的事務(wù)對(duì)數(shù)據(jù)庫的影響應(yīng)是持久的,即使數(shù)據(jù)庫因故障而受到破壞,DBMS也應(yīng)該能夠正確的恢復(fù)數(shù)據(jù)。2.2 故障8的種類事務(wù)故障系統(tǒng)故障計(jì)算機(jī)病毒介質(zhì)故障 事務(wù)故障什么是事務(wù)故障 某個(gè)事務(wù)在運(yùn)行過程中由于種種原因未運(yùn)

37、行至正常終止點(diǎn)就夭折了(有的是可以通過事務(wù)程序本身發(fā)現(xiàn)的,有的是非預(yù)期的)例如,銀行轉(zhuǎn)賬事務(wù),這個(gè)事務(wù)把一筆金額從一個(gè)賬戶甲轉(zhuǎn)給另一個(gè)賬戶乙。BEGIN TRANSACTION讀賬戶甲的余額BALANCE;BALANCE=BALANCE-AMOUNT;(AMOUNT 為轉(zhuǎn)賬金額)寫回BALANCE;IF(BALANCE startup mount ;svrmgrl alter database recover automatic; 如果控制文件被破壞,則:svrmgrl alter database recover using backup controfile; 按照提示輸入log文件名和r

38、edolog文件名; svrmgrl alter database open resetlogs; 數(shù)據(jù)庫臨時(shí)文件和回滾表空間的恢復(fù):簡單地offline drop 并重建即可 。注意:如果數(shù)據(jù)庫不運(yùn)行在archive 模式下,則恢復(fù)只能恢復(fù)到上次備份時(shí)的狀態(tài)。 關(guān)于archive 模式的設(shè)定,以及備份的相關(guān)技術(shù),參見ORACLE數(shù)據(jù)庫備份技術(shù);二、ORACLE表空間恢復(fù)方案 (一)、戶表空間 錯(cuò)誤現(xiàn)象:在啟動(dòng)數(shù)據(jù)庫時(shí)出現(xiàn)ORA-01157,ORA-01110或操作系統(tǒng)級(jí)錯(cuò);誤例如ORA-07360,在關(guān)閉數(shù)據(jù)庫(使用shutdown normal或shutdown immediate) 時(shí)將

39、導(dǎo)致錯(cuò)誤ORA-01116,ORA-01110以及操作系統(tǒng)級(jí)錯(cuò)誤ORA-07368;解決:以下有兩種解決方案:方案一、用戶的表空間可以被輕易地重建; 即最近導(dǎo)出的對(duì)象是可用的或表空間中的對(duì)象可以被輕易地重建等。在這種情況下,最簡單的方法是offline并刪除該數(shù)據(jù)文件,刪除表空間并重建表空間以及所有的對(duì)象。 svrmgrl startup mount; svrmgrl alter database datafile filename offline drop; svrmgrl alter database open; svrmgrl drop tablespace tablespace_nam

40、e including contents; 重建表空間及所有對(duì)象。方案二、用戶的表空間不能夠被輕易地重建;在大多數(shù)情況下,重建表空間是不可能及太辛苦的工作.方法是倒備份及做介質(zhì)恢復(fù).如果您的系統(tǒng)運(yùn)行在NOARCHIVELOG模式下,則只有丟失的數(shù)據(jù),在online redo log中方可被恢復(fù)。步驟如下: 1)Restore the lost datafile from a backup ;2)svrmgrl startup mount ; 3)svrmgrl select v1.group#,member,sequence#,first_change# from v$log v1,v$log

41、file v2 where v1.group#=v2.group#; 4)如果數(shù)據(jù)庫運(yùn)行在NOARCHIVELOG模式下則:svrmgrl select file#,change# from v$recover_file; 如果 CHANGE# 大于最小的FIRST_CHANGE#則數(shù)據(jù)文件可以被恢復(fù)。 如果 CHANGE# 小于最小的FIRST_CHANGE#則數(shù)據(jù)文件不可恢復(fù)。恢復(fù)最近一次的全備份或采用方案一。 5)svrmgrl recover datafile filename; 6)確認(rèn)恢復(fù)成功; 7)svrmgrl alter database open resetlogs; 只讀

42、表空間無需做介質(zhì)恢復(fù),只要將備份恢復(fù)即可。唯一的例外是: 表空間在最后一次備份后被改為read-write 模式; 表空間在最后一次備份后被改為read-only 模式;在這種情況下,均需進(jìn)行介質(zhì)恢復(fù)。 (二)、臨時(shí)表空間 臨時(shí)表空間并不包含真正的數(shù)據(jù),恢復(fù)的方法是刪除臨時(shí)表空間并重建即可。(三)、系統(tǒng)表空間 如果備份不可用,則只能采用重建數(shù)據(jù)庫的方法; (四)、回滾表空間 有兩種情況: 1、數(shù)據(jù)庫已經(jīng)完全關(guān)閉(使用shutdown immediate或shutdown命令); 1) 確認(rèn)數(shù)據(jù)庫完全關(guān)閉 ;2) 修改init.ora文件,注釋rollback-segment;3) svrmgr

43、l startup restrict mount ;4) svrmgrl alter database datafile filename offline drop; 5) svrmgrl alter database open; 基于出現(xiàn)的結(jié)果:statement PRocessed 轉(zhuǎn)(7); ORA-00604,ORA-00376,ORA-01110轉(zhuǎn)(6); 6) svrmgrl shutdown immediate ; 修改init.ora文件,增加如下一行:_corrupted_rollback_segments = (,.) ;svrmgrl startup restrict;

44、7) svrmgrl drop tablespace tablespace_name including contents; 8) 重建表空間及回滾段 ;9) svrmgrl alter system disable restricted session; 10)修改init.ora文件 ; 2、數(shù)據(jù)庫未完全關(guān)閉(數(shù)據(jù)庫崩潰或使用shutdown abort命令關(guān)閉數(shù)據(jù)庫) 恢復(fù)備份; 1) svrmgrl startup mount ; 2) svrmgrl select file#,name,status from v$datafile; svrmgrl alter database da

45、tafile filename online; 3)svrmgrl select v1.group#,member,sequence#,first_change# from v$log v1,v$logfile v2 where v1.group#=v2.group#; 4) svrmgrl select file#,change# from v$recover_file; #參見方案2-4 5) svrmgrl recover datafile filename; 6) svrmgrl alter database open;3、數(shù)據(jù)庫處于打開狀態(tài) 1) 刪除回滾段和表空間; 2) 重建表空

46、間和回滾段; (五)、控制文件恢復(fù) 1所有的控制文件均被破壞; 將備份的控制文件拷貝至原目錄下,對(duì)于RAW DEVICE(裸設(shè)備),則:dd if=con.bak of=/dev/rdrd/drd1 seek=128 ;2并非所有的控制文件均被破壞,用其他的控制文件啟動(dòng)數(shù)據(jù)庫; (六)、數(shù)據(jù)塊及其中數(shù)據(jù)的挽救 現(xiàn)象:執(zhí)行ORACLE操作時(shí)出現(xiàn)ORA-01578錯(cuò)誤; 分析:ORA-1578錯(cuò)誤是當(dāng)ORACLE認(rèn)為一個(gè)數(shù)據(jù)塊可能被破壞而發(fā)生的,通常引起該錯(cuò)誤的原因有以下幾種:I/O的硬件或firmware損壞; 操作系統(tǒng)I/O或cache故障; 內(nèi)存或頁交換出錯(cuò); 部分?jǐn)?shù)據(jù)文件被覆蓋; 試圖訪問

47、未格式化塊; 磁盤修復(fù) ;其他原因; 解決步驟: 查看log以及trace文件,檢查是否有其他錯(cuò)誤發(fā)生; 定位錯(cuò)誤: sqlselect * from v$datafile where file#=; sqlselect owner,segment_name,segment_type from dba_extents wherefile_id= and between block_id and block_id+blocks-1;基于返回的segment_type: segment類型為temporary或cache或無返回值,檢查SQL語句是否正確。 segment類型為rollback s

48、egment,則數(shù)據(jù)塊需要恢復(fù)。sql analyze table validate structure cascade; sql analyze table clustername validate structure cascade; 硬件錯(cuò)誤的恢復(fù)數(shù)據(jù)庫運(yùn)行在ARCHIVE模式下 ;OFFLINE相應(yīng)的數(shù)據(jù)文件 ;拷貝備份的數(shù)據(jù)文件; rename the datafile to new location ;recover the datafile using archive log;online數(shù)據(jù)文件; 數(shù)據(jù)庫運(yùn)行在非ARCHIVE模式下; OFFLINE相應(yīng)數(shù)

49、據(jù)文件 ;拷貝備份的數(shù)據(jù)文件,rename the datafile and online it; 拯救表中數(shù)據(jù); 例如:sqlselect * from bigemp; ERROR:ORA-01578: ORACLE DATA block corrupted (file#8,block#8147) ORA-00110: data file 8: /oracle/usr714.dbf corrupt file id : 8=8(hex) corrupt block id : 8147=1fd3(he; sql create table temp as select * from bigemp

50、where 1=2; ql insert into temp select * from bigemp /*+rowid(bigemp) */ whererowid =0000.1fd4.0000.0008.0008; 在ORACLE 7.1以前版本,rowid range scan不存在時(shí),可以通過索引達(dá)到以上相同的目的。 數(shù)據(jù)庫在歸檔模式下的完全恢復(fù)在進(jìn)行數(shù)據(jù)庫的完全恢復(fù)時(shí)要進(jìn)行如下的操作:將要恢復(fù)的文件和表空間設(shè)為脫機(jī)(offline),但是不包括系統(tǒng)表空間或活動(dòng)的還原(回滾)表空間;僅還原(Restore)損壞的或丟失的操作系統(tǒng)文件,不還原(Restore)其他的任何文件;恢復(fù)(rec

51、over)數(shù)據(jù)文件其中“還原(Restore)”就是將原先備份的文件復(fù)制回去替換損壞或丟失的操作系統(tǒng)文件?!盎謴?fù)(Recover)”就是將使用recover命令將從備份操作完成開始到數(shù)據(jù)文件崩潰這段時(shí)間內(nèi)所提交的數(shù)據(jù)從歸檔日志文件或重做日志文件協(xié)會(huì)到還原的數(shù)據(jù)文件中。這一操作會(huì)自動(dòng)執(zhí)行。完全恢復(fù)的好處:在恢復(fù)時(shí)不需要關(guān)閉數(shù)據(jù)庫;所有的提交數(shù)據(jù)都可以恢復(fù);僅需要還原損壞的或丟失的數(shù)據(jù)文件;數(shù)據(jù)庫在歸檔模式下的完全恢復(fù)有4種方法,下面我們對(duì)每一種方都進(jìn)行操作一下。在開始做恢復(fù)實(shí)驗(yàn)之前,我們認(rèn)識(shí)一下recover命令的用法,Oracle提供了3中recover的用法:recover automati

52、c database;該命令只能在數(shù)據(jù)庫加載(mount)的狀態(tài)下使用。recover automatic tablespace “表空間號(hào)”|“表空間名”;該命令只能在數(shù)據(jù)庫打開(open)狀態(tài)下使用。 recover automatic datafile “數(shù)據(jù)文件號(hào)”|“數(shù)據(jù)文件名”;該命令只能在數(shù)據(jù)庫打開狀態(tài)下使用。在數(shù)據(jù)庫最初處于打開的狀態(tài)下,進(jìn)行數(shù)據(jù)庫的恢復(fù)8這一種數(shù)據(jù)庫恢復(fù)是指數(shù)據(jù)庫的某一個(gè)或多個(gè)數(shù)據(jù)文件被刪除,數(shù)據(jù)庫處于打開狀態(tài)下的恢復(fù)。這種故障,我們一般是先想辦法將數(shù)據(jù)庫啟動(dòng)起來,然后再想辦法恢復(fù)數(shù)據(jù),原因是讓那些沒有損壞的數(shù)據(jù)文件盡快上線提供系統(tǒng)服務(wù),減少系統(tǒng)宕機(jī)時(shí)間,減少

53、損失。模擬環(huán)境搭建/創(chuàng)建一個(gè)表空間ts1SQLcreate tablespace ts1 datafile c:disk1ts1.dbf size 10m autoextend on next 10m maxsize unlimited;備份要?jiǎng)h除的表空間ts1/備份表空間ts1,實(shí)際上就是備份表空間中的數(shù)據(jù)文件ts1.dbf;SQLalter tablespace ts1 begin backup;SQLhost copy c:disk1ts1.dbf c:SQLalter tablespace ts1 end backup;關(guān)閉數(shù)據(jù)庫,并刪除數(shù)據(jù)文件ts1/查看數(shù)據(jù)文件位置SQLselec

54、t file_name,tablespace_name from dba_data_files;/關(guān)閉數(shù)據(jù)庫SQLshutdown immediate;刪除數(shù)據(jù)文件SQLhost del c:disk1ts1.dbf;啟動(dòng)數(shù)據(jù)庫SQLstartup發(fā)現(xiàn)數(shù)據(jù)庫可以裝載但不能打開,并報(bào)告數(shù)據(jù)文件6:c:disk1ts1.dbf;鎖定或無法標(biāo)識(shí)。數(shù)據(jù)庫無法打開。如果表空間中還有其他數(shù)據(jù)文件能正常使用,這時(shí)我們就將損壞的數(shù)據(jù)文件脫機(jī)SQLalter database datafile 6 offline;/將數(shù)據(jù)文件脫機(jī);1.將損壞的數(shù)據(jù)文件脫機(jī)后,就不會(huì)在影響數(shù)據(jù)庫的打開了,現(xiàn)在打開數(shù)據(jù)庫:SQLa

55、lter database open;2.如果磁盤沒有壞,將原有備份的數(shù)據(jù)文件拷回到原有磁盤上,如果磁盤壞了,我們就要在選一個(gè)適當(dāng)?shù)拇疟P,把數(shù)據(jù)文件拷貝到上面去,然后再將數(shù)據(jù)庫數(shù)據(jù)文件改路徑;將數(shù)據(jù)文件ts1拷貝到e盤上SQLhost copy c:ts1.dbf e:數(shù)據(jù)文件改名SQLalter database rename file c:disk1ts1.dbf to e:ts1.dbf;3.對(duì)數(shù)據(jù)文件ts1.dbf介質(zhì)恢復(fù)SQLset autorecovery on;SQLrecover datafile 6;4.將數(shù)據(jù)文件ts1.dbf聯(lián)機(jī)SQLalter database data

56、file 6 online;5.查詢數(shù)據(jù)庫狀態(tài)SQLselect file_name,tablespce_name from dba_data_files;恢復(fù)完成。二、在數(shù)據(jù)庫最初處于關(guān)閉的狀態(tài)下,進(jìn)行開啟數(shù)據(jù)庫的恢復(fù)17這個(gè)恢復(fù)實(shí)驗(yàn)是在數(shù)據(jù)庫系統(tǒng)表空間的系統(tǒng)數(shù)據(jù)文件system01.dbf遭到破壞后進(jìn)行的恢復(fù)。將系統(tǒng)表空間的數(shù)據(jù)文件system01.dbf備份SQLalter tablespace system begin backup;SQLhost copy e:oradataorclsystem01.dbf c:system01.dbf;SQLalter tablespace sys

57、tem end backup;將數(shù)據(jù)庫關(guān)閉,并刪除system01.dbf;SQLshutdown immediate;SQLhost del e:oradataorclsystem01.dbf;啟動(dòng)數(shù)據(jù)庫到mount狀態(tài),這是不能將數(shù)據(jù)文件system01.dbf設(shè)置為offline,因?yàn)樗窍到y(tǒng)數(shù)據(jù)文件,只要它脫了機(jī),數(shù)據(jù)庫就根本無法啟動(dòng)。SQLstartup mount;1.將system01.dbf改名;SQLalter database rename file e:oradataorclsystem01.dbf to c:system01.dbf;2.完成介質(zhì)恢復(fù);SQLset au

58、torecovery on;SQLrecover database;3.打開數(shù)據(jù)庫SQLalter database open;數(shù)據(jù)庫恢復(fù)完成。4.恢復(fù)沒有備份的數(shù)據(jù)庫;5.將數(shù)據(jù)文件ts1.dbf刪除;SQLshutdown immediate;SQLhost del e:ts.dbf;6.將數(shù)據(jù)庫啟動(dòng)到mount狀態(tài);SQLstartup mount;7.將數(shù)據(jù)文件ts1.dbf脫機(jī);SQLalter database datafile e:ts1.dbf offline;8.將數(shù)據(jù)庫打開;SQLalter database open;/查看數(shù)據(jù)庫恢復(fù)狀態(tài);SQLselect * from

59、 v$recover_file;9.創(chuàng)建數(shù)據(jù)文件的結(jié)構(gòu);SQLalter database create datafile e:ts1.dbf;/重建與原有數(shù)據(jù)文件同名的文件或:/重建的數(shù)據(jù)文件名與原來的數(shù)據(jù)文件不同,這可能是原有的磁盤損壞的情況;SQLalter database create datafile e:ts1.dbf as e:oradatats1.dbf;10.使用recover命令對(duì)數(shù)據(jù)文件進(jìn)行恢復(fù),這時(shí)一定要注意歸檔文件一定要在Oracle能夠訪問到的磁盤上,不能放在磁帶上,最好在歸檔日志文件定義的目錄內(nèi);/查看歸檔日志文件的目標(biāo)位置;SQLshow parameter

60、log_archive_dest_;SQLset autorecovery on;SQLrecover datafile e:ts1.dbf;11.將數(shù)據(jù)文件ts1.dbf聯(lián)機(jī);SQLalter database datafile e:ts1.dbf online;數(shù)據(jù)庫恢復(fù)完成。3.6本章小結(jié)本章主要介紹了數(shù)據(jù)的轉(zhuǎn)儲(chǔ)和日志文件的相關(guān)作用,DBMS必須對(duì)事務(wù)故障、系統(tǒng)故障和介質(zhì)故障進(jìn)行恢復(fù);恢復(fù)中最經(jīng)常使用的技術(shù):數(shù)據(jù)庫轉(zhuǎn)儲(chǔ)和登記日志文件。恢復(fù)的基本原理:利用存儲(chǔ)在后備副本、日志文件和數(shù)據(jù)庫鏡像中的冗余數(shù)據(jù)來重建數(shù)據(jù)庫。第四章 數(shù)據(jù)庫恢復(fù)的策略4.1 備份的策略 備份8內(nèi)容備份的內(nèi)容可能包括:

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論