close
實 作 環 境

資料庫鏡像是一種簡單的策略,提供了下列優點:

[增加資料保護]

資料庫鏡像可提供完整或近乎完整的資料備援性,端視作業模式是高安全性模式

或高效能模式而定。

在 SQL Server 2008 Enterprise 或更新版本上執行的資料庫鏡像夥伴伺服器

會自動嘗試解決會阻止讀取資料頁面的特定類型錯誤。無法讀取頁面的夥伴

會向其他夥伴要求全新副本。如果這個要求成功,無法讀取的頁面就會使用副本取代

,這通常會解決錯誤



[提高資料庫的可用性]

發生損毀事件時,在具有自動容錯移轉的高安全性模式下,自動容錯移轉便會迅速將

資料庫的待命副本變成線上狀態 (無資料遺失)。在其他作業模式下,資料庫管理員則

可選擇對資料庫的待命副本進行強制服務 (可能發生資料遺失)。

[提升實際執行的資料庫在升級期間的可用性]

若要將鏡像資料庫的停機時間減至最少,您可以循序升級參與資料庫鏡像工作階段的
 
SQL Server 執行個體。這只需要承擔單一容錯移轉的停機時間。

[ 本實驗規劃環境 ]:

SQL Server 2008 (網域)架構運行

預設執行個體: KEYNES  ,Primary DB

執行個體Fair:  KEYNES\Fair ,見證伺服器角色

執行個體MIRROR: KEYNES\MIRROR ,Standby DB

我們將建立使用者DB: keynes 在 Primary DB 上

將KEYNES(Primary DB)  還原模式設定為FULL

接者

替KEYNES DB 進行完整備份加入 with init 參數 
#新寫入紀錄將覆蓋舊紀錄

.....後續操作內容讀者請往下參閱
[KEYNES 主體DB 執行個體]

(1.) 建立 KEYNES DB , 修改DB"還原狀態"為FULL

       隨後進行初次完整DB備份     #此例備份裝置: 'E:/backupz'

      create database keynes

      go

     alter database keynes set recovery full      #recovery 設置為full

      go

     backup database keynes to disk='E:\backupz'  with init   

     接者請將KEYNES DB 交易紀錄檔做為備份         
 
   
BACKUP LOG keynes TO DISK = 'E:\backupz' 

  
(2)[KEYNES Mirror DB 執行個體]: 切換至Mirror 執行各體執行

接者請先建立KEYNES DB ,然而我們需利用上一步 備份&紀錄檔案進行初始化 NoRecovery

restore database keynes from disk='E:\backupz' with replace,norecovery,
move 'keynes' to 'C:\Program Files\Microsoft SQL Server\MSSQL10.MIRROR\MSSQL\DATA\keynes.mdf'
,move 'keynes_log' to'C:\Program Files\Microsoft SQL Server\MSSQL10.MIRROR\MSSQL\DATA\keynes_log.ldf'

#由於我們執行個體存放同一台Server , 我們可以方便利用備份裝置backupz 進行還原

   此例將備份裝置內keynes.mdf & keynes_log.ldf  利用move 參數移動到data資料夾下


 
  完成一次備份後,接者繼續還原交易紀錄檔 

RESTORE LOG keynes  FROM DISK = 'E:\backupz'  WITH FILE=1, NORECOVERY

GO      
#設定為NORECOVERY 還原模式,   WITH FILE=1  還原第一比交易紀錄

 

[鏡像設置組態開始]

[KEYNES 主體DB 執行個體]

 點選 KEYNES 資料庫(右鍵/屬性/鏡像) ,點選"設定安全性" 進行設定

 
      下一步: 由於我們要製作"自動容錯轉移設計" 故我們需要 "見證伺服器" 
   
         勾選: "見證伺服器執行個體"
   
       組態主體伺服器個體(KEYNES )

       設定: 主體伺服器監聽Port號

       端點名稱: 本例設為: 鏡像_主體
   
      組態鏡像伺服器個體(KEYNES\MIRROR )

       設定: 鏡像伺服器監聽Port號

       端點名稱: 本例設為: 鏡像_MIRROR
  
     組態鏡像伺服器個體(KEYNES\FAIR )

  
     設定: 見證伺服器監聽Port號

       端點名稱:本例設為: 鏡像_見證 
  
    
   
設定完成後_點選"完成"   SQL Server 設置Mirror 成功

   
 #本例暫不急於啟動 鏡像,隨後再手動啟動"鏡像" 亦可
  
     接者我們回到主體執行個體(KEYNES) 之"鏡像" 屬性 設定頁面,手動"啟用鏡像" 成功

     鏡像作業模式: 分 高效能,高保護,高可用性(唯有"高可用性"可做到自動Fail over)

                              其他二模式必須手動轉移至鏡像資料庫
 
                              (若需手動轉移鏡像.請點選下圖中: "容錯轉移" Button)即可

      最下方"狀態":  可檢視目前鏡像同步狀態...


    
[鏡像自動容錯移轉測試]

    
我們在主體伺服器KEYNES DB 下建立新Table 並建立兩筆新Record 寫入 monkey3 table

 
    
接者我們回到 KEYNES DB 屬性\鏡像 ,點選我們下圖中提到"容錯移轉"Button 

    將 主體伺服器個體(KEYNES) 身份 手動轉移到(KEYNES\Mirror) 運作

    並檢驗上一步寫入資料是否有被同步到鏡像伺服器?

  
       點選 "是" 進行容錯移轉
   

     切換  [鏡像執行個體 KEYNES\MIRROR] ,檢驗 Mirror 角色是否UP

     由下圖可知_主體已由原 KEYNES 執行個體 , 順利移轉到 KEYNES\MIRROR 
   
      接下來我們利用SQL 查尋Mirror 執行體是否亦同步從主體執行體複寫新Record

 
       下圖顯示 Mirror (KEYNES\MIRROR)同步主體執行個體(KEYNES)已ok
 

       最後我們查看_KEYNES\MIRROR 鏡像狀態 : 已同步處理,資料庫已經完全同步

    

結語:  KEYNES 測試 資料庫鏡像 外 MS SQL 亦多了 LOG Shipping 交易紀錄檔傳送  容錯機制

           有時間,再將LAB Po 上網做介紹!

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 終極.凱因斯 的頭像
    終極.凱因斯

    NEIL`s_IT技術學習分享發表Blog

    終極.凱因斯 發表在 痞客邦 留言(0) 人氣()