數據庫備份文件還原方法
Jason.lin 2017-11-10 星期五
工作有幾年了,現在發現前段時間遇到問題的解決方法最近經常記不住了,又得重新查詢解決辦法,費時費力,一直想着要做個博客記錄這些方法,方便提醒自己,趁現在提了辭職時間比較充裕的時候,決定從現在開始拾起博客這一塊。下面不廢話了, 開始第一篇隨筆了!
一、情景描述
現在在整理交接工作,在這個過程中看到了更久之前離職的前同事留下來的代碼,決定重新理一下思路,他使用.net搭了一個簡單的web框架,有使用數據庫和登錄網頁,因為很久以前的工作,需要在本機上搭建數據庫,查找了半天只找到了一個Mes_2017022201115的文件,別的信息都沒有了。
二、解決辦法
查看項目的相關文件,好歹有了一個疑似數據庫備份的文件了……
第一步,我用文本編輯器打開了這個文件,發現內容如下圖所示,文件以TAPE開頭,且包含Microsoft SQL Server RAID字樣,百度查詢發現有解釋說可能是“SQL Server數據庫磁帶備份文件”。
Figure1 文本編輯器打開Mes_2017022201115首行
第二步,嘗試打開這個Mes_2017022201115文件查看有沒有有效信息,於是進入MSDN網站https://docs.microsoft.com/,在SQL中搜索“查看數據庫磁帶備份”,得知使用使RESTORE HEADERONLY 語句獲取備份數據庫信息如下圖所示,將路徑改為我們文件的路徑,運行后果然有數據庫的信息出現了。
Figure2 查看數據庫磁盤備份文件SQL語句
Figure3 查看數據庫磁盤備份文件結果
第三步,這一步就明確了,我們以該文件為備份文件,還原MES數據庫即可,這里參考LionDen的“
SQL server 2008數據庫的備份與還原(轉)”(轉載該博客),這里粘貼出來就不再做重復工作了
一、SQL數據庫的備份:
1、依次打開 開始菜單 → 程序 → Microsoft SQL Server 2008 → SQL Server Management Studio → 數據庫:Dsideal_school_db既是我們需要備份的學籍數據庫
圖(1)
2、選擇要備份的數據庫“Dsideal_school_db”,點擊鼠標右鍵 → 任務 → 備份,如圖(2):
圖(2)
3、在打開的“備份數據庫 —Dsideal_school_db”對話框中,先點擊刪除,然后點擊“添加”,如圖(3):
圖(3)
4、在彈出的“選擇備份目標”對話框中,如圖(4)
圖(4)
5、選擇好備份的路徑(如D盤的江西-學籍-數據庫備份文件夾中),文件類型選擇“所有文件”,“文件名”那個位置填寫上您要備份的數據庫的名字(最好在您備份的數據庫的名字后面加上日期,以方便以后查找),之后連續點擊“確定”按鈕即可完成數據庫的備份操作,如圖(5):
圖(5
二、SQL數據庫的還原:
1、選擇您要還原的數據庫“Dsideal_school_db”,點擊鼠標右鍵 → 任務 → 還原 → 數據庫,如圖(6):
圖(6)
2、在出現的“還原數據庫 — school_web_db”對話框中選擇“源設備”,然后點擊后面的“…”按鈕,如圖(7):
圖(7)
3、在出現的“指定備份”對話框中,點擊“添加”按鈕,如圖(8):
圖(8)
4、找到數據庫備份的路徑,選擇您所要還原的數據庫“Dsideal_school_db”(注意:文件類型選擇所有文件),然后連續“兩次”點擊“確定”按鈕,如圖(9):
圖(9)
5、在出現的“還原數據庫 — Dsideal_school_db”對話框中,勾選上“選擇用戶還原的備份集”下的數據庫前的復選框,如圖(10)
圖(10)
6、然后選擇“選項”,勾選上“覆蓋現有數據庫”,如圖(11):
圖(11)
三、還原數據庫問題解決方案
在還原數據庫“Dsideal_school_db”時,有時會遇見上圖中的問題“因為數據庫正在使用,所以無法獲得對數據庫的獨占訪問權”,此時我們可以按照以下步驟解決此問題
1、右鍵數據庫“Dsideal_school_db”,然后選擇“屬性”,如下圖
2、在出現的“數據庫屬性 — Dsideal_school_db ”對話框中,選擇“選項”,在“其他選項”下的“狀態”中找到“限制訪問”。選擇“SINGLE_USER”,點擊“確定”按鈕,如下圖:
3、按照正常還原數據庫的步驟,還原數據庫。