數(shù)據(jù)庫備份和恢復_第1頁
數(shù)據(jù)庫備份和恢復_第2頁
數(shù)據(jù)庫備份和恢復_第3頁
數(shù)據(jù)庫備份和恢復_第4頁
數(shù)據(jù)庫備份和恢復_第5頁
已閱讀5頁,還剩36頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

數(shù)據(jù)庫備份和恢復第12章數(shù)據(jù)庫的備份和恢復12.1備份概述

12.2備份操作

12.3恢復操作

12.4恢復數(shù)據(jù)庫的其他方法

12.5數(shù)據(jù)的導入和導出

12.1備份概述

為什么以及何時備份備份是指數(shù)據(jù)庫管理員定期或不定期地將數(shù)據(jù)庫部分或全部內容復制到磁帶或磁盤上保存起來的過程。當數(shù)據(jù)庫遭到破壞時,可以利用備份進行數(shù)據(jù)庫的恢復。備份的目的就是當數(shù)據(jù)庫發(fā)生意外時,盡可能的減少數(shù)據(jù)的丟失。

何時進行備份,取決于所能承受數(shù)據(jù)損失的大小。執(zhí)行備份操作必須擁有數(shù)據(jù)庫備份的權限。

備份類型

SQLServer2000支持的備份類型有四種:完全數(shù)據(jù)庫備份差異備份事務日志備份文件和文件組備份1.完全數(shù)據(jù)庫備份

完全數(shù)據(jù)庫備份是指備份數(shù)據(jù)庫中當前所有的數(shù)據(jù)包括事務日志。與事務日志備份和差異備份相比,完全數(shù)據(jù)庫備份使用的存儲空間多,完成備份操作需要的時間長,所以完全數(shù)據(jù)庫備份的創(chuàng)建頻率通常比差異備份或事務日志備份低。完全數(shù)據(jù)庫備份適用備份容量較小、或數(shù)據(jù)庫中數(shù)據(jù)的修改較少的數(shù)據(jù)庫。

2.差異備份

差異備份是指備份自上次完全數(shù)據(jù)庫備份以來更改的數(shù)據(jù)。差異備份比完全數(shù)據(jù)庫備份小而且備份速度快,因此可以經常地備份,經常備份將減少丟失數(shù)據(jù)的危險。差異備份適合于修改頻繁的數(shù)據(jù)庫。3.事務日志備份

事務日志備份是指備份自上次備份以來數(shù)據(jù)變化的過程,即事務日志文件的信息。其中的上次備份可以是完全數(shù)據(jù)庫備份、差異備份或事務日志備份??梢允褂檬聞杖罩緜浞輰?shù)據(jù)庫恢復到特定的即時點(如輸入多余數(shù)據(jù)前的那一點)或恢復到故障點。

4.文件和文件組備份

文件和文件組備份適合于特大型數(shù)據(jù)庫,因為一個很大的數(shù)據(jù)庫要進行完全數(shù)據(jù)庫備份需要很長的時間,那么可以將數(shù)據(jù)庫的文件和文件組分別進行備份。

備份后如果數(shù)據(jù)庫發(fā)生了意外,一般應遵循如下的步驟來進行恢復:(1)如果當前日志沒有損壞,首先備份事務日志;(2)恢復最近的完全數(shù)據(jù)庫備份;(3)恢復最近的差異備份(如果進行過差異備份);(4)依次恢復自差異備份以后的所有事務日志備份(按備份的先后順序恢復)?;謴湍P?/p>

SQLServer2000提供了三種恢復模型,以確定如何備份數(shù)據(jù)以及能承受何種程度的數(shù)據(jù)丟失。簡單恢復完全恢復大容量日志記錄恢復1.簡單恢復使用簡單恢復模型可以將數(shù)據(jù)庫恢復到最后一次備份的時刻的狀態(tài)。不過,無法將數(shù)據(jù)庫還原到故障點或特定的即時點。在簡單恢復的模型下只能進行完全數(shù)據(jù)庫備份和差異備份。

2.完全恢復完全恢復提供將數(shù)據(jù)庫恢復到故障點或特定即時點的能力。在完全恢復模型下能進行各種備份。3.大容量日志記錄恢復允許大容量日志記錄操作,對某些大規(guī)?;虼笕萘繌椭撇僮魈峁┳罴研阅芎妥钌俚娜罩臼褂每臻g。在大容量日志記錄恢復模型下能進行數(shù)據(jù)庫備份、差異備份和事務日志備份。

備份設備

創(chuàng)建備份時,必須選擇存放備份數(shù)據(jù)的備份設備,即存放備份的存儲介質。備份設備可以是磁盤、磁帶、命名管道。當建立一個備份設備是要分配一個邏輯名和一個物理名。

1.使用企業(yè)管理器創(chuàng)建備份設備。(1)打開“企業(yè)管理器”,展開服務器組,然后展開服務器。(2)展開“管理”文件夾,右擊“備份”,然后單擊“新建備份設備”命令,彈出“備份設備屬性”對話框,如圖12-1所示。圖12-1備份設備屬性對話框

(3)在“名稱”框中輸入該備份設備的名稱。(4)單擊“文件名”,輸入備份設備的物理文件名或單擊瀏覽(“...”)按鈕顯示“備份設備位置”對話框,再選擇備份設備所使用的物理文件。(5)單擊“確定”按鈕完成創(chuàng)建備份設備操作。

2.使用系統(tǒng)存儲過程sp_addumpdevice創(chuàng)建備份設備

sp_addumpdevice'device_type','logical_name',

'physical_name’device_type是指備份設備類型,

磁盤:disk;磁帶:tape;

命名管道:pipe。例12-1下面的示例添加一個名為

sales_backup的磁盤備份設備,其物理名稱為D:\sales_backup.bak。EXECsp_addumpdevice'disk','sales_backup','d:\sales_backup.bak'可以使用系統(tǒng)存儲過程sp_dropdevice刪除備份設備。例12-2下面的示例刪除上例創(chuàng)建的備份設備。EXECsp_dropdevice'sales_backup'12.2備份操作

使用企業(yè)管理器備份數(shù)據(jù)庫

(1)打開“企業(yè)管理器”,展開服務器組,然后展開服務器。(2)展開“數(shù)據(jù)庫”文件夾,右擊需要的數(shù)據(jù)庫,選擇“所有任務”子菜單,然后單擊“備份數(shù)據(jù)庫”,打開“SQLServer備份”對話框,如圖12-2所示。

圖12-2

SQLServer備份對話框

(3)在“名稱”框內,輸入備份名稱。在“描述”框中輸入對備份集的描述。也可以不填寫描述框。(4)在“備份”選項下單擊“數(shù)據(jù)庫—完全”?;蛘哌x擇其他的備份類型。(5)在“目的”選項下,指定備份存放的位置。單擊“添加”可以添加備份文件或備份設備,如圖12-3所示。(6)在“重寫”選項下,單擊“追加到媒體”,將備份追加到當前備份設備的內容之后;單擊“重寫現(xiàn)有媒體”,將重寫備份設備中備份內容,即原來的內容被覆蓋。(7)選擇“調度”復選框確定備份操作執(zhí)行的時間,也可以直接單擊“確定”按鈕,立即執(zhí)行備份操作。圖12-3選擇備份目的對話框使用Transact-SQL語句備份數(shù)據(jù)庫

語法形式如下:

BACKUPDATABASEdatabase_name

TObackup_device[WITH[INIT|NOINIT]

[[,]DIFFERENTIAL]]init:選項表示重寫備份集的數(shù)據(jù)。Noinit:選項表示備份數(shù)據(jù)將追加在原有的內容之后,NOINIT是默認設置。Differential:選項表示差異備份。例12-3下例為sales數(shù)據(jù)庫創(chuàng)建一個完全數(shù)據(jù)庫備份和一個差異數(shù)據(jù)庫備份。BACKUPDATABASEsalesTOsales_backupWithinitGOBACKUPDATABASEsalesTOsales_backupwithdifferentialGO使用BACKUPlog命令可以對數(shù)據(jù)庫進行事務日志備份語法形式如下:BACKUPLOGdatabase_nameTObackup_device例12-4下例為sales數(shù)據(jù)庫創(chuàng)建一個事務日志備份。BACKUPLOGsalesTOsales_backup12.3恢復操作

恢復數(shù)據(jù)庫是加載備份并應用事務日志重建數(shù)據(jù)庫的過程。在數(shù)據(jù)庫的恢復過程中,用戶不能進入數(shù)據(jù)庫,即數(shù)據(jù)庫是不能使用的。一般而言,總是設置該數(shù)據(jù)庫中“單用戶”選項為真來限制用戶訪問要恢復的數(shù)據(jù)庫。

SQLServer中進行數(shù)據(jù)庫恢復,可以使用企業(yè)管理器和Transact-SQL語句。使用企業(yè)管理器恢復數(shù)據(jù)庫(1)打開“企業(yè)管理器”,展開服務器組,然后展開服務器。(2)展開“數(shù)據(jù)庫”文件夾,右擊數(shù)據(jù)庫,指向“所有任務”子菜單,然后單擊“還原數(shù)據(jù)庫”命令。彈出“還原數(shù)據(jù)庫”對話框,如圖12-4所示。

(3)在“還原為數(shù)據(jù)庫”框中,如果要還原的數(shù)據(jù)庫名稱與顯示的默認數(shù)據(jù)庫名稱不同,請在其中進行輸入或選擇。若要用新名稱還原數(shù)據(jù)庫,請輸入新的數(shù)據(jù)庫名稱。(4)單擊“數(shù)據(jù)庫”,在“要還原的第一個備份”列表中,選擇要還原的備份集。如果要將一個服務器上的數(shù)據(jù)庫備份恢復到另一個服務器上,應選擇“從設備”還原。(5)在“還原”列表中,單擊要還原的數(shù)據(jù)庫備份。(6)單擊“選項”選項卡,根據(jù)需要進行各選項的設置,如圖12-5所示。

(7)單擊“確定”按鈕開始恢復數(shù)據(jù)庫。

圖12-4還原數(shù)據(jù)庫對話框

圖12-5還原數(shù)據(jù)庫對話框“選項”選項卡使用Transact-SQL語句恢復數(shù)據(jù)庫語法形式如下:

RESTOREDATABASEdatabase_name

FROMbackup_device[WITH[FILE=]

[[,]{NORECOVERY|RECOVERY|STANDBY=undo_}]]

其中:FILE=:標識要還原的備份集。例如,

為1表示備份媒體上的第一個備份集,

為2表示第二個備份集。NORECOVERY:表示還原操作不回滾任何未提交的事務。如果需要恢復另一個事務日志,則必須指定NORECOVERY或STANDBY選項。如果NORECOVERY、RECOVERY和STANDBY均未指定,則默認為RECOVERY。當還原數(shù)據(jù)庫備份和多個事務日志時,或在需要多個RESTORE語句時(例如在完整數(shù)據(jù)庫備份后進行差異數(shù)據(jù)庫備份),SQLServer要求在除最后的RESTORE語句外的所有其它語句上使用WITHNORECOVERY選項。RECOVERY:表示還原操作回滾任何未提交的事務。在恢復后即可使用數(shù)據(jù)庫。只有在最后一步恢復是使用。例12-4:從sales_backup備份設備中還原完全數(shù)據(jù)庫備份后還原差異備份。RESTOREDATABASEsalesFROMsales_backupWITHNORECOVERY

RESTOREDATABASEsalesFROMsales_buckupWITHFILE=212.4恢復數(shù)據(jù)庫的其他方法

數(shù)據(jù)庫的脫機和聯(lián)機

具體操作步驟如下:(1)打開“企業(yè)管理器”,展開服務器組,然后展開服務器。(2)展開“數(shù)據(jù)庫”文件夾,右擊Pubs數(shù)據(jù)庫,指向“所有任務”子菜單,然后單擊“脫機”命令。(3)在Pubs數(shù)據(jù)庫旁出現(xiàn)“脫機”兩字,操作完成。這時可以對Pubs的數(shù)據(jù)庫文件進行復制。脫機的數(shù)據(jù)庫要恢復使用,則使用聯(lián)機操作。分離和附加數(shù)據(jù)庫

SQLServer2000允許分離數(shù)據(jù)庫的數(shù)據(jù)文件和事務日志文件,然后將其重新附加到另一臺服務器,甚至同一臺服務器上。如果想將數(shù)據(jù)庫從一臺計算機移到另一臺計算機或者從一個物理磁盤移到另一物理磁盤上,則分離和附加數(shù)據(jù)庫很有用:一般是先分離數(shù)據(jù)庫;然后將數(shù)據(jù)庫文件移到另一服務器或磁盤;最后通過指定移動文件的新位置附加數(shù)據(jù)庫。當附加在數(shù)據(jù)庫時,必須指定主數(shù)據(jù)文件的名稱和物理位置。

12.5數(shù)據(jù)的導入和導出

在實際工作中我們的數(shù)據(jù)可能存儲在Excel、Access、Sybase、Oracle等數(shù)據(jù)庫中,用戶有時需要在SQLServer中利用這些數(shù)據(jù),這就需要一種工具能夠將數(shù)據(jù)轉換到SQLServer中。SQLServer提供了一種很容易的把數(shù)據(jù)從一個SQLServer數(shù)據(jù)庫或非SQLServer數(shù)據(jù)庫傳輸?shù)揭粋€SQLServer數(shù)據(jù)庫的方法,這就是使用數(shù)據(jù)傳輸服務(DataTransformationServices,DTS)。通過DTS用戶可以進行不同數(shù)據(jù)源之間數(shù)據(jù)的導入、導出和轉換。

數(shù)據(jù)的導入

例12-6將Excel表中的數(shù)據(jù)導入SQLServer中的mydb數(shù)據(jù)庫中。具體操作步驟如下:(1)打開“企業(yè)管理器”,展開服務器組,然后展開服務器。(2)右擊“數(shù)據(jù)庫”,選擇“所有任務”中的“導入數(shù)據(jù)”,彈出“數(shù)據(jù)轉換服務導入/導出向導”。(3)單擊“下一步”,出現(xiàn)“選擇數(shù)據(jù)源”對話框,在“數(shù)據(jù)源”下拉列表框中選擇“MicrosoftExcel97-2000”,如圖12-9所示對話框。在“文件名”框中選擇需要導入的文件的路徑和文件名。圖12-9導入/導出選擇數(shù)據(jù)源對話框圖12-10選擇目的

(4)單擊“下一步”,出現(xiàn)如圖12-10所示對話框。選擇目的,在數(shù)據(jù)庫框中選擇mydb。圖12-11選擇方式

(5)單擊“下一步”,選中“從源數(shù)據(jù)復制表和視圖”,如圖12-11所示對話框。圖12-12選擇表和視圖

溫馨提示

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

評論

0/150

提交評論