程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> SQL Server 雙機熱備1(based on log shipping)

SQL Server 雙機熱備1(based on log shipping)

編輯:關於SqlServer
     日志傳送是SQL Server2000企業版進行雙機熱備的一個主要解決方案,其原理比較簡單,實現也比較方便,只是由於和Windows之間錯綜復雜的關系,導致設置起來有不少困難,出現問題也不容易診斷。

1.實現概述
 *雙機熱備針對的是具體的某個數據庫而不是整個服務器
 雙機熱備基於日志傳送原理。全程由作業控制,主服務器定時向輔服務器發送日志,輔服務器處於STAND BY模式下,定時按日志進行差異恢復。如果主服務器停擺,監視服務器會將主服務器和輔服務器的角色互換。監視服務器推薦設置在第三台服務器上,如條件不具備,也可考慮設置在輔服務器上。

                                    
                                                                       圖1-1
2.准備工作
操作系統:
 首先准備兩台干淨環境的計算機,裝完全一樣的操作系統,SQL SERVR2000企業版(版本和補丁包一致),SQL SERVER相關的硬盤一定要NTFS格式,不裝MACFEE(我的個人經驗說明MacFEE和SQL Server有內存沖突)。
 為兩台機器建立隸屬Administrator組的帳戶名和密碼,帳戶名和密碼需要完全一樣(也可直接用Administrator)。
 在兩台機器的…/MSSQL目錄下建立兩個共享文件夾,名稱不要相同,如shipping_source和shipping_dest,並給予Administrator組帳號的全部權限。這兩個文件夾將作為兩台服務器上的數據庫存放和裝載日志文件的文件夾(具體設置後面將講到)。
 檢查兩台機器的子網掩碼,保證其在一個域或工作組中,在網上鄰居內能看到對方服務器的共享文件夾並且訪問時不需要輸入密碼(*如彈出密碼輸入,則不要輸入以免影繼續響調試)。
 主服務器和輔服務器上的SQLSERVER服務和SQLAGENT服務都設置成開機自動啟動。
SQL Server 2000企業版:
 在主服務器和輔服務器上以自己的計算機名或域中的成員名注冊各自和對方的SQL Server(*(local)不要,IP也可以)
 打開數據庫的屬性窗口,

勾選自動啟動SQL SERVER,自動啟動SQL Server代理,自動啟動MSDTC,(兩台都要做)並檢查兩台服務器的產品版本和操作平台是否一致。

                
                                                                      圖2-1
 切換到“安全性”選項卡,保證身份認證是SQL Server和Windows
 把啟動服務帳戶由系統帳戶修改為前面建立的Administrator組用戶,兩台服務器都要設置(此步驟很重要),設置時administrator前會要求加域名,不能設錯。

               
                                                                     圖2-2
 將SQL AGENT的啟動帳戶也改為剛才的帳戶,具體步驟如下:
 打開管理->SQL Server代理->屬性,在常規選項卡的服務啟動帳戶中將帳戶改為本帳戶,輸入剛才的帳戶和密碼(兩台機器都要做,很重要)。

              
                                                                     圖2-3

到此請檢查:
1.兩台數據庫服務器的Windows用戶名密碼
2.SQL Server用戶名密碼
3.SQL Agent用戶名密碼
是否全部相同
兩台機器的共享文件夾是否全部都可以在網上鄰居裡看到,而且訪問不需要用戶名密碼
而且具有全部權限。
3.設置
所有的設置都在主服務器裡進行!
在想要進行日志傳送的數據庫裡運行維護計劃向導:

                                                                            圖3-1
在向導中勾選你想要傳送日志的數據庫,並選中“將事務日志傳送到其它的SQL
Server(日志傳送)”

     
                                                                      圖3-2
 其它維護計劃步驟與日志傳送無關,略
 存儲備份文件目錄設定成前面的主服務器上的共享文件夾的本地路徑,
如:D:\Program Files\Microsoft SQL Server\MSSQL\shipping_source(重要步驟)

     


                                                                      圖3-3
 指定事務日志共享中,指定到主服務器的共享文件夾的網絡路徑(重要,主服務器備份
文件目錄對應主服務器備份文件目錄的共享網絡路徑)
如:\\192.168.0.127\shipping_source

      
                                                                      圖3-4
在添加目的數據庫中:
服務器名稱:輔服務器的名稱(SQL Server注冊名應和計算機名相同)
事務日志的目錄:指向輔服務器上創建的共享文件夾的本地目錄
目的數據庫:事先不要在輔服務器上建立和主服務器同名的數據庫,此向導會自動建立,勾選“創建並初始化新數據庫”
使用以下文件目錄:用於數據,用於日志,這個和本地建庫沒有區別,可用默認的,但要保證該盤是NTFS格式
數據庫裝載狀態:選中備用模式(重要,不在備用模式無法使用差異還原)
終止數據庫中的用戶(推薦):勾選此項
允許數據庫采用主角色:勾選此項
事務日志備份目錄:指的是輔服務器的備份目錄的網絡路徑,如圖中所示(重要,輔服務器備份文件目錄對應輔服務器備份文件目錄的共享網絡路徑)

                                                                            圖3-5
立即執行全部的數據庫備份
設置備份調度:頻率指多長時間進行一次日志備份-傳送-裝載的過程
 裝載延時指主服務器日志備份調度後到輔服務器開始根據日志還原的延時,一般需要設幾分鐘的延時,但應保證到下一次傳送調度時輔服務器能裝載結束。

     
                                                                      圖3-6
該阈值指因為種種原因多長時間內主服務器沒備份或輔服務器沒還原就告警,應根據實際情況設置,但應保證大於3倍的頻率比較合理。
生成的警告可以在SQL Server日志中查看。

     
                                                                 

   圖3-7
監視服務器在沒有第三台服務器的情況下應該使用輔服務器,用Windows身份認證。

     
                                                                      圖3-8
是否產生報表和維護記錄根據實際需求決定。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved