SQL SERVER 記錄傳送,設定,監控,角色轉移

來源:互聯網
上載者:User
server|監控
 

 

 

 

 

 

 

 

Log Shipping
Operations Guide

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 
Create Log Shipping
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

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



10.設定主伺服器上記錄備份頻率。



11.設定次要伺服器複本備份日誌和載入備份日誌的頻率,以及記錄檔在次要伺服器上的留存時間。



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



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



14.點擊Next,指定維護計劃的名稱。Finish,開始進行Log shipping 的建立。
Monitor
1.       Log Shipping 建立好後,和Log Shipping 相關的資訊儲存在msdb的7個表中:

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 備份,複製,載入等動作的狀態資訊。


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

 

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

 
Role Alter
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 yslogins.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’
Role Change
1.         在新主要伺服器的資料庫維護計劃內移除記錄傳送功能。

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

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

4.         維護所有交易日誌。

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

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

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

 


相關文章

Beyond APAC's No.1 Cloud

19.6% IaaS Market Share in Asia Pacific - Gartner IT Service report, 2018

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。