第7章數(shù)據(jù)庫(kù)的安全與保護(hù)_第1頁(yè)
第7章數(shù)據(jù)庫(kù)的安全與保護(hù)_第2頁(yè)
第7章數(shù)據(jù)庫(kù)的安全與保護(hù)_第3頁(yè)
第7章數(shù)據(jù)庫(kù)的安全與保護(hù)_第4頁(yè)
第7章數(shù)據(jù)庫(kù)的安全與保護(hù)_第5頁(yè)
已閱讀5頁(yè),還剩76頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第7章

數(shù)據(jù)庫(kù)的安全與保護(hù)

本章主要內(nèi)容數(shù)據(jù)庫(kù)安全控制機(jī)制數(shù)據(jù)庫(kù)備份機(jī)制數(shù)據(jù)庫(kù)恢復(fù)機(jī)制7.1數(shù)據(jù)庫(kù)安全控制機(jī)制

數(shù)據(jù)庫(kù)的安全性是指數(shù)據(jù)庫(kù)中的數(shù)據(jù)不被非法使用的特性。數(shù)據(jù)庫(kù)管理員的職責(zé),須指定一套安全控制策略。保證那些合法用戶(hù)可以登錄到數(shù)據(jù)庫(kù)服務(wù)器中,并且能夠?qū)嵤?shù)據(jù)庫(kù)中各種權(quán)限范圍內(nèi)的操作。要防止所有的非授權(quán)用戶(hù)進(jìn)行越權(quán)的或非法的操作。

數(shù)據(jù)庫(kù)的安全控制有多種措施,通常使用用戶(hù)身份驗(yàn)證和權(quán)限控制的方法。

7.1.1安全控制模型

安全控制包括從用戶(hù)使用數(shù)據(jù)庫(kù)應(yīng)用程序開(kāi)始,一直到訪問(wèn)后臺(tái)數(shù)據(jù)庫(kù)為止所經(jīng)過(guò)的一系列的安全認(rèn)證。用戶(hù)Client數(shù)據(jù)庫(kù)應(yīng)用程序DBAP提交身份提交身份數(shù)據(jù)庫(kù)管理系統(tǒng)DBMS數(shù)據(jù)允許訪問(wèn)驗(yàn)證反饋驗(yàn)證反饋身份驗(yàn)證操作權(quán)驗(yàn)證圖7-1數(shù)據(jù)庫(kù)系統(tǒng)的安全模型結(jié)果返回7.1.2數(shù)據(jù)庫(kù)用戶(hù)及權(quán)限

數(shù)據(jù)庫(kù)的兩類(lèi)權(quán)限對(duì)數(shù)據(jù)庫(kù)管理系統(tǒng)進(jìn)行維護(hù)的權(quán)限;對(duì)數(shù)據(jù)庫(kù)中的對(duì)象和數(shù)據(jù)進(jìn)行操作的權(quán)限。

對(duì)數(shù)據(jù)庫(kù)對(duì)象的操作權(quán)限:創(chuàng)建、刪除和修改諸如表、視圖等數(shù)據(jù)庫(kù)對(duì)象。對(duì)數(shù)據(jù)庫(kù)數(shù)據(jù)的操作權(quán)限:對(duì)表、視圖數(shù)據(jù)的增加、刪除、修改、查看的權(quán)力。數(shù)據(jù)庫(kù)的三類(lèi)用戶(hù)(按操作權(quán)限劃分)數(shù)據(jù)庫(kù)系統(tǒng)管理員(DBA):有一切權(quán)限。數(shù)據(jù)庫(kù)對(duì)象擁有者:對(duì)所擁有的對(duì)象具有一切權(quán)限。普通用戶(hù):只具有對(duì)數(shù)據(jù)庫(kù)數(shù)據(jù)的增加、刪除、修改、查看的權(quán)力。例如:SQLServer的用戶(hù)分為Windows授權(quán)用戶(hù)和SQL授權(quán)用戶(hù)兩種類(lèi)型。Windows授權(quán)用戶(hù)來(lái)自于Windows的用戶(hù)或組;SQL授權(quán)用戶(hù)來(lái)自于非Windows的用戶(hù),我們也將這種用戶(hù)稱(chēng)為SQL用戶(hù)。

7.1.3SQLServer2000用戶(hù)與權(quán)限管理

一個(gè)用戶(hù)如果要訪問(wèn)SQLServer數(shù)據(jù)庫(kù)中的數(shù)據(jù),必須經(jīng)過(guò)三個(gè)認(rèn)證過(guò)程:安全身份驗(yàn)證:確認(rèn)登錄用戶(hù)的登錄帳號(hào)和密碼的正確性,由此來(lái)驗(yàn)證用戶(hù)是否具有連接到SQLServer數(shù)據(jù)庫(kù)服務(wù)器的資格。用戶(hù)帳號(hào)驗(yàn)證:登錄到數(shù)據(jù)庫(kù)服務(wù)器后,要訪問(wèn)具體的某個(gè)數(shù)據(jù)庫(kù),須有對(duì)數(shù)據(jù)庫(kù)訪問(wèn)的用戶(hù)帳號(hào)。

操作許可驗(yàn)證:要操作數(shù)據(jù)庫(kù)中的數(shù)據(jù)或?qū)ο?,還須擁有相應(yīng)操作的操作許可權(quán)。1.安全身份驗(yàn)證

兩種確認(rèn)用戶(hù)的驗(yàn)證模式。Windows驗(yàn)證模式:利用了Windows本身具備的管理登錄、驗(yàn)證用戶(hù)合法性的能力,允許SQLServer用戶(hù)登錄時(shí)使用Windows的用戶(hù)名和口令?;旌向?yàn)證模式:混合驗(yàn)證模式接受Windows授權(quán)用戶(hù)和SQL授權(quán)用戶(hù)。如果不是Windows操作系統(tǒng)的用戶(hù)也希望使用SQLServer,那么應(yīng)該選擇混合驗(yàn)證模式。SQLServer推薦使用Windows驗(yàn)證模式。利用企業(yè)管理器設(shè)置驗(yàn)證模式在要設(shè)置驗(yàn)證模式的服務(wù)器名上單擊鼠標(biāo)右鍵,然后在彈出的菜單上選擇“屬性”。圖7-2設(shè)置SQLServer安全身份驗(yàn)證

在SQLServer屬性對(duì)話框選擇“安全性”對(duì)話框,進(jìn)行相關(guān)設(shè)置。圖7-3SQLServer安全身份驗(yàn)證屬性

2.登錄帳號(hào)管理

兩個(gè)默認(rèn)的登錄帳號(hào):系統(tǒng)管理員(SystemAdministrator)是一個(gè)特殊的登錄帳號(hào),它在數(shù)據(jù)庫(kù)中對(duì)應(yīng)用戶(hù)帳號(hào)dbo,在SQLServer系統(tǒng)和所有數(shù)據(jù)庫(kù)中擁有所有的權(quán)限。BUILTIN\administrators是SQLServer為每一個(gè)WindowsNT系統(tǒng)管理員提供的默認(rèn)的登錄帳號(hào),此帳號(hào)在SQLServer系統(tǒng)和所有的數(shù)據(jù)庫(kù)中擁有所有權(quán)限。用企業(yè)管理器創(chuàng)建登錄帳號(hào)。選擇“新建登錄”項(xiàng)。圖7-4創(chuàng)建SQLServer登錄帳號(hào)

設(shè)置“常規(guī)”選項(xiàng)卡。圖7-5“常規(guī)”選項(xiàng)卡

設(shè)置“服務(wù)器角色”選項(xiàng)卡。圖7-6“服務(wù)器角色”選項(xiàng)卡設(shè)置“數(shù)據(jù)庫(kù)訪問(wèn)”選項(xiàng)卡。圖7-7“數(shù)據(jù)庫(kù)訪問(wèn)”選項(xiàng)卡刪除和修改帳號(hào)圖7-8修改和刪除登錄帳號(hào)3.用戶(hù)帳號(hào)管理

用戶(hù)帳號(hào)惟一標(biāo)識(shí)用戶(hù),用戶(hù)對(duì)數(shù)據(jù)庫(kù)的訪問(wèn)權(quán)限以及與數(shù)據(jù)庫(kù)對(duì)象的所有關(guān)系都通過(guò)用戶(hù)帳號(hào)來(lái)控制。管理數(shù)據(jù)庫(kù)用戶(hù)的過(guò)程實(shí)際上就是建立登錄帳號(hào)與數(shù)據(jù)庫(kù)用戶(hù)帳號(hào)之間的映射關(guān)系的過(guò)程。默認(rèn)情況下,新建立的數(shù)據(jù)庫(kù)只有一個(gè)用戶(hù)帳號(hào)dbo,它是數(shù)據(jù)庫(kù)的擁有者,系統(tǒng)默認(rèn)的登錄帳號(hào)sa自動(dòng)與每一個(gè)數(shù)據(jù)庫(kù)用戶(hù)帳號(hào)dbo關(guān)聯(lián)。通常,數(shù)據(jù)庫(kù)用戶(hù)帳號(hào)總是與某一登錄帳號(hào)相關(guān)聯(lián)。guest用戶(hù)帳號(hào)例外。在SQLServer安裝時(shí)被添加到master,pubs,tempdb和northwind數(shù)據(jù)庫(kù)中,讓那些沒(méi)有屬于自己用戶(hù)帳號(hào)的登錄帳號(hào)能訪問(wèn)具有g(shù)uest用戶(hù)帳號(hào)的數(shù)據(jù)庫(kù)。guest用戶(hù)帳號(hào)在master和tempdb中必須始終存在,其他的數(shù)據(jù)庫(kù)中可以添加或刪除guest用戶(hù)。默認(rèn)情況下,新建的數(shù)據(jù)庫(kù)中沒(méi)有g(shù)uest用戶(hù)帳戶(hù)。用企業(yè)管理器創(chuàng)建用戶(hù)帳號(hào)

選擇“新建數(shù)據(jù)庫(kù)用戶(hù)”項(xiàng)。

圖7-9創(chuàng)建數(shù)據(jù)庫(kù)用戶(hù)帳號(hào)用企業(yè)管理器創(chuàng)建用戶(hù)帳號(hào)

設(shè)置“數(shù)據(jù)庫(kù)用戶(hù)屬性”。

圖7-10“新建用戶(hù)”選項(xiàng)卡先前在創(chuàng)建SQLServer登錄帳號(hào)的時(shí),也可同時(shí)創(chuàng)建用戶(hù)帳號(hào)。

刪除和修改帳號(hào)圖7-11數(shù)據(jù)庫(kù)用戶(hù)的修改與刪除4.權(quán)限管理權(quán)限用來(lái)限定用戶(hù)可以使用的數(shù)據(jù)庫(kù)對(duì)象和可以對(duì)數(shù)據(jù)庫(kù)對(duì)象執(zhí)行的操作。對(duì)象權(quán)限:用戶(hù)對(duì)數(shù)據(jù)庫(kù)中的表、視圖等對(duì)象的操作權(quán)。相當(dāng)于數(shù)據(jù)庫(kù)操作語(yǔ)言(DML)的語(yǔ)句權(quán)限。表和視圖權(quán)限:控制用戶(hù)是否有權(quán)在表和視圖上執(zhí)行SELECT、INSERT、UPDATE和DELETE。

字段權(quán)限:控制用戶(hù)是否有權(quán)在單個(gè)字段上執(zhí)行SELECT、UPDATE和REFERENCES。存儲(chǔ)過(guò)程權(quán)限:控制用戶(hù)是否有權(quán)執(zhí)行EXECUTE。語(yǔ)句權(quán)限:相當(dāng)于數(shù)據(jù)定義語(yǔ)言(DDL)的語(yǔ)句權(quán)限,表示對(duì)數(shù)據(jù)庫(kù)的操作許可。這種權(quán)限專(zhuān)指是否允許執(zhí)行下列語(yǔ)句:CREATETABLE、CREATEVIEW等與創(chuàng)建數(shù)據(jù)庫(kù)對(duì)象有關(guān)的操作??舍槍?duì)某個(gè)SQL語(yǔ)句,而不是數(shù)據(jù)庫(kù)中已經(jīng)創(chuàng)建的特定的數(shù)據(jù)庫(kù)對(duì)象。只有sysyadmin、db_owner和db_securityadmin角色的成員才能授予語(yǔ)句權(quán)限。表7-1語(yǔ)句權(quán)限的Transact-SQL語(yǔ)句序號(hào)Transact-SQL功能1CREATEDATABASE創(chuàng)建數(shù)據(jù)庫(kù)2CAREATETABLE創(chuàng)建表3CREATEVIEW創(chuàng)建視圖4CREATERULE創(chuàng)建規(guī)則5CREATEDEFAULT創(chuàng)建默認(rèn)6CREATEPROCEDURE創(chuàng)建存儲(chǔ)過(guò)程7CREATEINDEX創(chuàng)建索引8BACKUPDATABASE備份數(shù)據(jù)庫(kù)9BACKUPLOG備份事務(wù)日志隱含權(quán)限:是指由SQLServer預(yù)定義的服務(wù)器角色、數(shù)據(jù)庫(kù)角色、數(shù)據(jù)庫(kù)擁有者和數(shù)據(jù)庫(kù)對(duì)象擁有者所具有的權(quán)限。隱含權(quán)限相當(dāng)于內(nèi)置權(quán)限,在系統(tǒng)安裝以后有些用戶(hù)和角色不必經(jīng)過(guò)授權(quán)就擁有的權(quán)限。

因?yàn)殡[含權(quán)限是SQLServer內(nèi)置的,所以權(quán)限的設(shè)置實(shí)際上是指對(duì)象權(quán)限和語(yǔ)句權(quán)限的設(shè)置。

①授予權(quán)限:允許用戶(hù)或角色具有某種操作權(quán)。②收回權(quán)限:不允許用戶(hù)或角色具有某種操作權(quán),或者收回曾經(jīng)授予的權(quán)限。③拒絕權(quán)限:拒絕某用戶(hù)或角色具有某種操作權(quán),即使用戶(hù)或角色通過(guò)繼承的方式得到了這種操作權(quán),也不允許其執(zhí)行相應(yīng)的操作。使用企業(yè)管理器-面向用戶(hù)。選擇用戶(hù)的“屬性”項(xiàng)。圖7-12面向用戶(hù)的權(quán)限設(shè)置使用企業(yè)管理器-面向用戶(hù)。選擇屬性窗口的“權(quán)限”。圖7-13對(duì)用戶(hù)test的權(quán)限設(shè)置使用企業(yè)管理器-面向用戶(hù)。設(shè)置與數(shù)據(jù)庫(kù)對(duì)應(yīng)的“數(shù)據(jù)庫(kù)用戶(hù)屬性”窗口。圖7-14與數(shù)據(jù)庫(kù)對(duì)應(yīng)的數(shù)據(jù)庫(kù)用戶(hù)屬性

使用企業(yè)管理器-面向用戶(hù)。設(shè)置列權(quán)限(可選)。圖7-15列權(quán)限

使用企業(yè)管理器-面向數(shù)據(jù)庫(kù)對(duì)象。選擇數(shù)據(jù)庫(kù)對(duì)象的“屬性”項(xiàng)。圖7-16面向?qū)ο蟮臋?quán)限設(shè)置

使用企業(yè)管理器-面向數(shù)據(jù)庫(kù)對(duì)象。選擇對(duì)象的“權(quán)限”。圖7-17對(duì)表對(duì)象courses的權(quán)限設(shè)置

使用企業(yè)管理器-面向數(shù)據(jù)庫(kù)對(duì)象。對(duì)象屬性的設(shè)置。圖7-18表對(duì)象courses的權(quán)限設(shè)置

權(quán)限管理:使用Transact-SQL語(yǔ)句。用于管理權(quán)限的語(yǔ)句有三個(gè):①GRANT語(yǔ)句用于授權(quán);②REVOKE語(yǔ)句用于收回權(quán)限;③DENY語(yǔ)句用于拒絕權(quán)限。表7-2SQLServer中管理權(quán)限的Transact-SQL語(yǔ)句類(lèi)別語(yǔ)句語(yǔ)法管理對(duì)象權(quán)限GRANTGRANT對(duì)象權(quán)限名[,…]ON{表名|視圖名|存儲(chǔ)過(guò)程名}TO{數(shù)據(jù)庫(kù)用戶(hù)名|用戶(hù)角色名}[,…]REVOKEREVOKE對(duì)象權(quán)限名[,…]ON{表名|視圖名|存儲(chǔ)過(guò)程名}FROM{數(shù)據(jù)庫(kù)用戶(hù)名|用戶(hù)角色名}[,…]DENYDENY對(duì)象權(quán)限名[,…]ON{表名|視圖名|存儲(chǔ)過(guò)程名}TO{數(shù)據(jù)庫(kù)用戶(hù)名|用戶(hù)角色名}[,…]管理語(yǔ)句權(quán)限GRANTGRANT語(yǔ)句權(quán)限名[,…]TO{數(shù)據(jù)庫(kù)用戶(hù)名|用戶(hù)角色名}[,…]REVOKEREVOKE語(yǔ)句權(quán)限名[,…]FROM{數(shù)據(jù)庫(kù)用戶(hù)名|用戶(hù)角色名}[,…]DENYDENY語(yǔ)句權(quán)限名[,…]TO{數(shù)據(jù)庫(kù)用戶(hù)名|用戶(hù)角色名}[,…]【例7.1】用7.1.2介紹的方法,首先創(chuàng)建一個(gè)新的登錄帳號(hào)GuestOne,采用SQLServer身份驗(yàn)證,密碼為空。并替StuentsInfo數(shù)據(jù)庫(kù)創(chuàng)建一個(gè)與GuestOne對(duì)應(yīng)的用戶(hù)帳號(hào):rightstest。在查詢(xún)分析器中,用sa登陸(查詢(xún)分析器的用法參見(jiàn)第四章),我們用GRANT語(yǔ)句為rightstest分配Students表的SELECT權(quán)限:GRANTSELECTONStudentsTOrightstest。【例7.2】用sa再次登錄查詢(xún)分析器,收回剛剛分配給rightstest的SELECT權(quán)限:REVOKESELECTONStudentsFROMrightstest。然后重新以GuestOne登錄查詢(xún)分析器,執(zhí)行語(yǔ)句:SELECT*FROMStudents,執(zhí)行失敗。查詢(xún)分析器同時(shí)給出執(zhí)行失敗的原因:是因?yàn)閳?zhí)行了REVOKE操作后,當(dāng)前的rightstest用戶(hù)已經(jīng)不擁有可以執(zhí)行SELECT語(yǔ)句的權(quán)限了。7.2數(shù)據(jù)庫(kù)備份機(jī)制

7.2.1為什么要進(jìn)行數(shù)據(jù)庫(kù)備份

SQLServer提供了內(nèi)置的安全性和數(shù)據(jù)保護(hù)主要是為了防止非法登錄者或沒(méi)有經(jīng)過(guò)的授權(quán)用戶(hù)對(duì)數(shù)據(jù)庫(kù)或數(shù)據(jù)造成破壞。在安全機(jī)制無(wú)效的情況下,為了能盡快恢復(fù)系統(tǒng)的正常工作并把損失降低到最低,必須對(duì)系統(tǒng)數(shù)據(jù)進(jìn)行備份,以便在需要時(shí)能夠及時(shí)恢復(fù)數(shù)據(jù)。

數(shù)據(jù)庫(kù)備份是指系統(tǒng)管理員定期地將數(shù)據(jù)庫(kù)部分或全部地復(fù)制到磁帶或另一個(gè)磁盤(pán)上保存起來(lái)的過(guò)程。這些復(fù)制的數(shù)據(jù)拷貝稱(chēng)為后備副本。對(duì)SQLServer而言,備份針對(duì)數(shù)據(jù)庫(kù)或者日志進(jìn)行,數(shù)據(jù)庫(kù)備份記錄了在進(jìn)行備份這一操作時(shí)數(shù)據(jù)庫(kù)中所有數(shù)據(jù)的狀態(tài)。SQLServer備份數(shù)據(jù)庫(kù)是動(dòng)態(tài)的:在進(jìn)行數(shù)據(jù)庫(kù)備份的同時(shí)允許其他用戶(hù)對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作。SQLServer2000支持四種備份形式。數(shù)據(jù)庫(kù)備份(完全數(shù)據(jù)庫(kù)備份)(DatabaseBackups):對(duì)數(shù)據(jù)庫(kù)的完整備份,包括所有的數(shù)據(jù)庫(kù)對(duì)象、數(shù)據(jù)和事務(wù)日志中的事務(wù)。注意:與差異數(shù)據(jù)庫(kù)備份和事務(wù)日志備份相比,完全數(shù)據(jù)庫(kù)備份由于是對(duì)數(shù)據(jù)庫(kù)的完整備份,所以這種備份類(lèi)型不僅速度較慢,而且將占用大量磁盤(pán)空間。

7.2.2SQLServer2000數(shù)據(jù)庫(kù)備份的種類(lèi)

差異數(shù)據(jù)庫(kù)備份(增量備份)(DifferentialDatabaseBackups):將最近一次數(shù)據(jù)庫(kù)備份(完全數(shù)據(jù)庫(kù)備份)以來(lái)發(fā)生的數(shù)據(jù)變化備份起來(lái),因此差異備份實(shí)際上是一種增量數(shù)據(jù)庫(kù)備份。

可考慮使用差異數(shù)據(jù)庫(kù)備份的情況:①最近一次完全數(shù)據(jù)庫(kù)備份后數(shù)據(jù)庫(kù)中只有較少的數(shù)據(jù)發(fā)生了改變;②希望進(jìn)行頻繁的備份,但不希望進(jìn)行頻繁的完全數(shù)據(jù)庫(kù)備份;③希望在還原數(shù)據(jù)庫(kù)時(shí)花費(fèi)最少的時(shí)間前滾事務(wù)日志備份。

事務(wù)日志備份(TransactionLogBackup):對(duì)數(shù)據(jù)庫(kù)發(fā)生的事務(wù)進(jìn)行備份包括從上次事務(wù)日志備份、差異備份和完全數(shù)據(jù)庫(kù)備份后,數(shù)據(jù)庫(kù)已經(jīng)執(zhí)行完成的所有事務(wù)。可考慮使用事務(wù)日志備份的情況:①不允許在最近一次完全數(shù)據(jù)庫(kù)備份之后發(fā)生數(shù)據(jù)丟失或損壞現(xiàn)象;②存儲(chǔ)備份文件的磁盤(pán)空間很小或者留給進(jìn)行備份操作的時(shí)間有限;③準(zhǔn)備把數(shù)據(jù)庫(kù)恢復(fù)到發(fā)生故障的前一點(diǎn);④數(shù)據(jù)庫(kù)變化較為頻繁。

數(shù)據(jù)庫(kù)文件和文件組備份(FileandFileGroupBackup):文件或文件組備份是指對(duì)數(shù)據(jù)庫(kù)文件或文件夾進(jìn)行備份,但其不像完全數(shù)據(jù)庫(kù)備份那樣同時(shí)也進(jìn)行事務(wù)日志備份。

在使用文件或文件組進(jìn)行恢復(fù)時(shí),仍要求有一個(gè)自上次備份以來(lái)的事務(wù)日志備份來(lái)保證數(shù)據(jù)庫(kù)的一致性。所以在進(jìn)行完文件或文件組備份后應(yīng)再進(jìn)行事務(wù)日志備份。1.指定或創(chuàng)建備份設(shè)備

備份設(shè)備是指SQLServer中存儲(chǔ)數(shù)據(jù)庫(kù)、事務(wù)日志或文件及文件組備份的存儲(chǔ)介質(zhì)??梢允潜镜氐拇疟P(pán)和遠(yuǎn)程服務(wù)器上硬盤(pán)、磁帶或者命名管道。當(dāng)建立一個(gè)備份設(shè)備時(shí),需要給其分配一個(gè)邏輯名和一個(gè)物理名。物理名是操作系統(tǒng)用來(lái)標(biāo)識(shí)備份設(shè)備的名稱(chēng)。邏輯名是用來(lái)標(biāo)識(shí)物理備份設(shè)備的別名。邏輯名最多30個(gè)字符并且必須遵守SQLServer的命名約定。備份數(shù)據(jù)庫(kù)時(shí),可以使用物理名或邏輯名,然后執(zhí)行備份操作對(duì)數(shù)據(jù)庫(kù)進(jìn)行備份。7.2.3SQLServer2000數(shù)據(jù)庫(kù)備份的方法

①使用企業(yè)管理器創(chuàng)建備份設(shè)備圖7-26新建備份設(shè)備①使用企業(yè)管理器創(chuàng)建備份設(shè)備圖7-27備份設(shè)備屬性設(shè)置②使用系統(tǒng)的存儲(chǔ)過(guò)程sp_addumpdevice創(chuàng)建備份設(shè)備語(yǔ)法形式如下:

sp_addumpdevice[@devtype=]‘備份設(shè)備類(lèi)型’,[@logicalname=]'備份設(shè)備的邏輯名稱(chēng)',[@physicalname=]'備份設(shè)備的物理名稱(chēng)'

備份設(shè)備類(lèi)型:值為disk(以硬盤(pán)文件作為備份設(shè)備)、

pipe(命名管道備份設(shè)備)或tape(磁帶備份設(shè)備)之一;

備份設(shè)備的邏輯名稱(chēng):是用戶(hù)命名的備份設(shè)備的邏輯名稱(chēng)。

備份設(shè)備的物理名稱(chēng):是對(duì)應(yīng)的物理備份設(shè)備文件全名?!纠?.3】為學(xué)生選課數(shù)據(jù)庫(kù)StudentsInfo創(chuàng)建一個(gè)本地的備份設(shè)備。

USEStudentsInfoEXECsp_addumpdevice'disk','StudentsInfoBK','C:\ProgramFiles\MicrosoftSQLServer\MSSQL\BACKUP\StudentsInfoBK.BAK‘GO2.執(zhí)行備份①使用企業(yè)管理器進(jìn)行備份圖7-28備份數(shù)據(jù)庫(kù)

①使用企業(yè)管理器進(jìn)行備份圖7-29“選項(xiàng)”選項(xiàng)卡

①使用企業(yè)管理器進(jìn)行備份

圖7-30選擇備份目的對(duì)話框①使用企業(yè)管理器進(jìn)行備份不立即備份可以使用備份調(diào)度圖7-31“編輯調(diào)度”對(duì)話框①使用企業(yè)管理器進(jìn)行備份不立即備份可以使用備份調(diào)度圖7-32編輯反復(fù)出現(xiàn)的作業(yè)調(diào)度①使用企業(yè)管理器進(jìn)行備份圖7-33SQLServer備份設(shè)置—“選項(xiàng)”選項(xiàng)卡①使用企業(yè)管理器進(jìn)行備份圖7-34SQLServer備份操作完成②使用備份向?qū)нM(jìn)行備份

選擇“工具”“向?qū)А薄肮芾怼?。圖7-35選擇向?qū)?duì)話框②使用備份向?qū)нM(jìn)行備份圖7-36備份向?qū)У臍g迎界面②使用備份向?qū)нM(jìn)行備份圖7-37備份向?qū)?選擇備份數(shù)據(jù)庫(kù)②使用備份向?qū)нM(jìn)行備份圖7-38備份向?qū)?備份數(shù)據(jù)庫(kù)名稱(chēng)及描述②使用備份向?qū)нM(jìn)行備份圖7-39備份向?qū)?選擇備份類(lèi)型②使用備份向?qū)нM(jìn)行備份圖7-40備份向?qū)?備份設(shè)備和屬性設(shè)置②使用備份向?qū)нM(jìn)行備份圖7-41備份向?qū)?備份驗(yàn)證和調(diào)度②使用備份向?qū)нM(jìn)行備份圖7-42備份向?qū)?備份完成③使用BACKUP語(yǔ)句進(jìn)行備份

使用BACKUPDATABASE語(yǔ)句和BACKUPLOG語(yǔ)句備份整個(gè)數(shù)據(jù)庫(kù)、事務(wù)日志,或者備份一個(gè)或多個(gè)文件或文件組。最簡(jiǎn)單的語(yǔ)法形式如下:

BACKUPDATABASE要備份的數(shù)據(jù)庫(kù)名稱(chēng)TO備份設(shè)備③使用BACKUP語(yǔ)句進(jìn)行備份【例7.4】為學(xué)生選課數(shù)據(jù)庫(kù)StudentsInfo創(chuàng)建備份到設(shè)備StudentsInfoBK上。USEStudentsInfoBACKUPDATABASEStudentsInfoTOStudentsInfoBKGO7.3數(shù)據(jù)庫(kù)恢復(fù)機(jī)制

7.3.1為什么要進(jìn)行數(shù)據(jù)庫(kù)恢復(fù)恢復(fù)數(shù)據(jù)庫(kù)是指將數(shù)據(jù)庫(kù)從錯(cuò)誤狀態(tài)恢復(fù)到正確狀態(tài)(最近的正確時(shí)刻)的過(guò)程。數(shù)據(jù)庫(kù)備份是在正常的工作環(huán)境和數(shù)據(jù)庫(kù)的正常狀態(tài)下進(jìn)行的,而數(shù)據(jù)庫(kù)恢復(fù)是在非正常狀態(tài)下進(jìn)行的,比如硬件故障、軟件癱瘓以及誤操作。數(shù)據(jù)庫(kù)系統(tǒng)在恢復(fù)過(guò)程中,自動(dòng)執(zhí)行安全檢查、重建數(shù)據(jù)庫(kù)結(jié)構(gòu)和填寫(xiě)數(shù)據(jù)庫(kù)內(nèi)容的任務(wù)。7.3.2SQLServer2000數(shù)據(jù)庫(kù)恢復(fù)的種類(lèi)

SQLServer2000支持三種數(shù)據(jù)庫(kù)恢復(fù)模式。簡(jiǎn)單恢復(fù)(SimpleRecovery):指在進(jìn)行數(shù)據(jù)庫(kù)恢復(fù)時(shí)僅使用了完全數(shù)據(jù)庫(kù)備份或差異備份,而不涉及事務(wù)日志備份。

簡(jiǎn)單恢復(fù)模式可使數(shù)據(jù)庫(kù)恢復(fù)到上一次備份的狀態(tài),但由于不使用事務(wù)日志備份來(lái)進(jìn)行恢復(fù),所以無(wú)法將數(shù)據(jù)庫(kù)恢復(fù)到故障發(fā)生時(shí)的狀態(tài)。選擇簡(jiǎn)單恢復(fù)模式時(shí)常使用的備份策略是:首先進(jìn)行數(shù)據(jù)庫(kù)備份;然后進(jìn)行差異備份。SQLServer2000支持三種數(shù)據(jù)庫(kù)恢復(fù)模式。完全恢復(fù)(FullRecovery):指通過(guò)使用完全數(shù)據(jù)庫(kù)備份和事務(wù)日志備份將數(shù)據(jù)庫(kù)恢復(fù)到發(fā)生故障的時(shí)刻,因此幾乎不造成任何數(shù)據(jù)丟失,這成為對(duì)付因存儲(chǔ)介質(zhì)損壞而數(shù)據(jù)丟失的最佳方法。

選擇完全恢復(fù)模式時(shí)常使用的備份策略是:首先進(jìn)行完全數(shù)據(jù)庫(kù)備份;然后進(jìn)行差異數(shù)據(jù)庫(kù)備份;最后進(jìn)行事務(wù)日志的備份。SQLServer2000支持三種數(shù)據(jù)庫(kù)恢復(fù)模式。批日志恢復(fù)(Bulk-loggedRecovery):批日志恢復(fù)在性能上要優(yōu)于簡(jiǎn)單恢復(fù)和完全恢復(fù)模式,它能盡最大努力減少批操作所需要的存儲(chǔ)空間。選擇批日志恢復(fù)模式所采用的備份策略與完全恢復(fù)所采用的

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論