MS SQL 2008 Master DB 資料庫損壞災難復原執行要點By Keynes

 
實驗說明
 
當"Master DB"資料庫損毀時,將造成執行個體無法正常運作,使用者無法正常登入SQL Server
 
防患未然,MIS 必需著手於日常備份MSDB習慣,並於災難發生時,修復MS SQL 維持正常運作
 
 實驗環境 : 以下將Master DB 縮簡名稱為"MSDB",方便LAB操作   #而非現已存在的MSDB 資料庫
 
Windows Server 2008 AD 網域 +  MS SQL2008  環境正常運行中
 
我們將故意移除MSDB的MDF與LOG檔案使資料庫運作停擺
 
 
       (1.)  我們先著手備份目前正常運作的MSDB 資料庫  工作->備份
 
               *在此我們為MSDB預先建立備份裝置: E:msdb_backup*
 
      
 
            接者組態相關備份設定(備份選擇: 完整)
 
       
 
         
         備份目的地: 指向 E:msql_backup 
        
 
        
 
         按下確定後->開始備份->備份OK
 
       
 
  (2)_我們將MSSQLServer 相關服務停用: 並將MSDB.mdf  & MSDB.log   故意砍掉此二檔案
 
           
 
           接著再次登入SQL Server 測試: 發現登入已失敗(MSDB已損毀)
 
          
 
(3)重建MSDB
 
     命令模式先切換到  C:Progran FilersMicrosoft SQL Server100setup Bootstraprelease
 
     setup.exe /quiet  /instancename=mssqlserver   /action=rebuliddatabase /sqlsysadminaccounts=administrator  /sapwd=xxxxx
 
      /instancename  定義執行個體名稱
 
      /action=rebuilddatabase  重建MSDB資料庫
 
    /sqlsysadminaccounts=administrator       建立Windows帳戶以管理執行個體
 
   /sapwd=xxxxx  混合模式指定sa 帳戶密碼
 
   
 
    接者請使用 Single 模式 啟動instance :  還原我們先前建立的MSDB備份檔案,必須先啟用 Single Mode 後再利用sqlmd 登入方可進行還原
 
     cd  C:Program FilesMicrosoft SQL Server MSSQL 10.MSSQL SERVERMSQLBinn   #先切換以下目錄
 
     執行
 
      sqlserver.exe -m     #即可進入單人模式請確認所有SQL Serve相關服務"停擺"不運作狀態,利用單人模式啟動執行個體
 
     
 
     >sqlcmd                            #登入sql server 指令操作模式
 
     >use   master                    #選擇欲備援的資料庫
 
     >go
 
    > restore database master from disk=‘E:msdb_backup’       #指定我們剛剛備份Master 資料ok的data路徑還原
 
    >go
 
      *下圖指示還原已成功處理*
 
           
 
     我們再次登入測試_登入: MSDB 經過重建修復後…已可以正常登入MS SQL Server
 
     
 
 LAB 參考資料
 
SQL Server 2008 管理實戰營運篇/悅知     

發表留言