[轉載]Log Shipping Operations Guide

tolywang發表於2008-09-18

 

Version: 1.0

 

 By TonyMeng

2004-11-30

 

 

Index

 

 

Create Log Shipping.. 3

Monitor.. 9

Delete Log shipping.. 10

Role Alter.. 11

Role Change.. 13

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1.       SQL Server 節點1 Tonym Tonym02必須位於同一域中,並且SQL1 SQL2都要使用域賬戶啟動SQL Server服務和SQLServerAgent服務。

2.       在企業管理器中刪掉local連線,應用Server Name註冊本地伺服器 Tonym,輔助伺服器Tonym02

3.       SQL1 伺服器上新建共享資料夾NorthwindBackupShare01,賦予啟動SQL Server賬戶的Full 許可權。在SQL1伺服器上新建資料夾 ReceiveSQL2Logs,用來在進行資料庫角色轉換時接收從SQL2上傳送過來的日誌。

 SQL2 伺服器上新建共享資料夾NorthwindBackupShare02,賦予啟動SQL Server賬戶    的Full 許可權。在SQL2伺服器上新建資料夾 ReceiveSQL1Logs,用來接收資料庫SQL1上傳送過來的日誌。

 

4.       設定想要應用Log Shipping的伺服器為完全恢復模式。

5.       Database Maintenance Plans上右鍵 New maintenance Plan,選擇進行LogShipping 的資料庫,每次只允許選擇一個資料庫。

6.去掉Back up the database as part of the maintenance plan,保證維護計劃唯一性(推薦)

7.指定資料庫日誌備份路徑。

8.指定存放日誌檔案的共享資料夾。

 

8.新增目的資料庫。

  Server Name 為目的名稱

  Transaction Log Destination Directory 填寫從SQL1上傳送到SQL2上日誌檔案的接收路徑.

  Destination Database 選擇新建資料庫(指定資料檔案,日誌檔案存放路徑)或者應用已存在的資料庫

  Database Load State

  No recovery mode:使用者將無法進行資料查詢,只供備份使用.

  Standby mode :設定成只讀模式,只要不是進行日誌回存的時候,都可以進行查詢。

  Terminate users in database(Recommended) :在回存資料庫或是交易日誌檔案時,回存程式將是資料庫唯一的使用者。

  Allow database to assume primary role:允許主要伺服器與次要伺服器之間進行角色轉換。

  選擇進行角色轉換後新主要伺服器的共享目錄路徑。

 

o

9Initialize the Destination Database: 挑選最近一次的資料或是建立一份新的備份資料。對大型資料庫,使用即有備份比較有效率。但是要保證從備份之後的日誌都存在於主伺服器上的日誌共享目錄中。

10.設定主伺服器上日誌備份頻率。

11.設定輔助伺服器複製備份日誌和載入備份日誌的頻率,以及日誌檔案在輔助伺服器上的留存時間。

12.針對日誌備份及日誌回存工作,設定合理的延遲時間,當超過臨界時間時,日誌傳送監控程式對話方塊會相應一個警告資訊。

13.指定監控伺服器,應該指定獨立於主伺服器,輔助伺服器的第三臺伺服器作為監控伺服器,或者指定輔助伺服器為監控伺服器。

14.點選Next,指定維護計劃的名稱。Finish,開始進行Log shipping 的建立。

1.       Log Shipping 建立好後,和Log Shipping 相關的資訊儲存在msdb7個表中:

Log_shipping_plans

Log_shipping_plan_databases

Log_shipping_databases

Log_shipping_plan_history

Log_shipping_monitor

Log_shipping_primaries

Log_shipping_secondaries

2.可以在監控伺服器的management 下看到Log shipping 備份,複製,載入等動作的狀態資訊。

1.  選擇主要伺服器上的log shipping 維護計劃,開啟屬性,選擇【Log shipping】設定頁,然後點選【Remove Log Shipping】。此動作將從次要伺服器上移除SQL Server Agent的備份與回存工作,並清除日誌傳送資料表內的所有相關資料。此外,日誌傳送監控程式的相關資訊也會一併被清除。然而此動作將會適當地保留主要伺服器上SQL Server Agent的交易日誌備份工作。只有在刪除資料庫維護計劃時,該工作才會被移除。假如您想從監控伺服器內移除掉日誌傳送監控程式,請用手動方式將log_shipping_primarieslog_shipping_secondarie 這兩個資料表(位於監控伺服器的msdb資料庫)的資料刪除即可。

 

如果您在資料庫維護計劃內設定日誌傳送時,就已允許目的資料庫可以做為新的日誌傳送來源資料庫。當您刪除主要伺服器的維護計劃時,次要伺服器上仍然會保留其資料庫維護計劃,以及交易日誌檔案備份工作。刪除這些專案的方式是將次要伺服器上與日誌傳送相關的資料庫維護計劃直接刪除。

 

1.       在主伺服器上建立登陸同步DTS包。

2.       開啟企業管理器並連線到主伺服器。展開企業管理器樹至“Data Transformation Services 組,選擇“Local Packages”。右擊“Local Packages”並選擇 New Package”。從“Task”選單選擇“16 Transfer Logins Task”。在源選擇 主伺服器,目的選項卡 選擇 輔助伺服器。在“Logins”選項卡,選擇傳輸與特定資料庫關聯的登陸,或者傳輸該伺服器的所有登陸。(對於我們的環境推薦使用傳輸該伺服器的所有登陸)

3.將DTS包儲存在主伺服器。

3.指定DTS同步時間(至少每週一次)。

同步登陸賬戶SID

1.         bcp master..syslogins out localpath\syslogins.dat  /N /S current_primary_server /U sa /P sa_password.

稍後會用到匯出的syslogins資訊.

2.         降級主要伺服器.在主伺服器執行以下儲存過程。

Use master

Exec msdb..sp_change_primary_role

        @db_name = ‘current_primary_dbname

        @backup_log = 1,

        @terminate = 1,

        @final_state = 3,

        @access_level = 1

3.         升級輔助伺服器.在輔助伺服器執行以下儲存過程。

Use master

Exec msdb..sp_change_secondary_role

        @db_name = ‘current_secondary_dbname

        @do_load = 1,

        @force_load = 1,

        @final_state = 1,

        @access_level = 1,

        @terminame = 1,

        @keep_replication = 0,

        @stopat = null

該儲存過程會將資料庫質為單使用者模式。明明沒有任何使用者正在存取資料庫,它卻告訴我資料庫目前為使用中,解決的方式為重新執行一次該儲存過程。

4.         通知監控伺服器角色已變更,在監控伺服器上執行以下儲存過程。

Use master

Exec msdb..sp_change_monitor_role

        @primary_server = ‘current_primary_server_name’,

        @secondary_server = ‘current_secondary_server_name’,

        @database = ‘current_secondary_dbname’,

        @new_source = ‘new_source_directory’

5.         在次要伺服器上解析登入帳號

Use master

Exec sp_resolve_logins

        @dest_db = ‘dbname’,

        @dest_path = ‘destination_path’,

        @filename = ‘filename’ (from step 1 export)

6.         連線資料庫存取與許可權。將轉移後已解析的登入帳號連結至相對應的資料庫使用者及其許可權. (SQL BOOK Online 缺少此步)

Use sourcename

Exec sp_change_users_login ‘update_one’ , ‘username’ , ‘LoginName

1.         在新主要伺服器的資料庫維護計劃內移除日誌傳送功能。

2.         在主要伺服器上刪除資料庫維護計劃。

3.         在次要伺服器上刪除資料庫維護計劃。

4.         維護所有交易日誌。

5.         在新主要伺服器上建立一個新的資料庫維護計劃,指定新次要伺服器所在,目的資料庫位置,以及交易日誌之適當存放位置。

6.         重新開始新主要伺服器的所有活動。

在您成功設定角色互換且建置新日誌傳送配對伺服器後,Enterprise Manager 的日誌傳送監視器可能會告訴您新次要伺服器資料庫並未與新主要伺服器資料庫取得同步(out of sync)。如果“最近一次載入的交易日誌”與“最近一次備份的交易日誌”之間的時間差超過了 out-of-sync設定值,您就會收到此報告。你需要把新主伺服器的備份日誌複製到新次伺服器的同步備份路徑下。到最近一次的備份資料被載入之後,日誌傳送監視器會回到平常無錯誤狀態。

 

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/35489/viewspace-521052/,如需轉載,請註明出處,否則將追究法律責任。

相關文章