1. 程式人生 > >SQL Server 事務日誌傳輸

SQL Server 事務日誌傳輸

概述

       可以使用日誌傳送將事務日誌不間斷地從一個數據庫(主資料庫)傳送到另一個數據庫(輔助資料庫)。不間斷地備份主資料庫中的事務日誌,然後將它們複製並還原到輔助資料庫,這將使輔助資料庫與主資料庫基本保持同步。目標伺服器充當備份伺服器,並可以將查詢處理從主伺服器重新分配到一個或多個只讀的輔助伺服器。日誌傳送可與使用完整或大容量日誌恢復模式的資料庫一起使用;使用日誌傳送,您可以自動將“主伺服器”例項上“主資料庫”內的事務日誌備份傳送到單獨“輔助伺服器”例項上的一個或多個“輔助資料庫”。事務日誌備份分別應用於每個輔助資料庫。可選的第三個伺服器例項(稱為“監視伺服器”)記錄備份和還原操作的歷史記錄及狀態,還可以在無法按計劃執行這些操作時引發警報

操作組成

  1. 在主伺服器例項中備份事務日誌。
  2. 將事務日誌檔案複製到輔助伺服器例項。
  3. 在輔助伺服器例項中還原日誌備份。

主伺服器和資料庫

日誌傳送配置中的主伺服器是作為生產伺服器的 SQL Server 資料庫引擎例項。主資料庫是主伺服器上希望備份到其他伺服器的資料庫。通過 SQL Server Management Studio 進行的所有日誌傳送配置管理都是在主資料庫中執行的。

主資料庫必須使用完整恢復模式或大容量日誌恢復模式,將資料庫切換為簡單恢復模式會導致日誌傳送停止工作。

輔助伺服器和資料庫

日誌傳送配置中的輔助伺服器是您想要在其中保留主資料庫備用副本的伺服器。一臺輔助伺服器可以包含多臺不同主伺服器中資料庫的備份副本。例如,某個部門可能有五臺伺服器,每臺伺服器都執行關鍵資料庫系統。在這種情況下,可以只使用一臺輔助伺服器,而不必使用五臺單獨的輔助伺服器。五個主系統上的備份都可以載入到這個備份系統中,從而減少所需的資源數量並節省開支。不太可能出現多個主系統同時發生故障的情況。另外,為了應對多個主系統同時不可用的罕見情況,輔助伺服器的規格可以比各主伺服器高。

輔助資料庫必須通過還原主資料庫的完整備份的方法進行初始化。還原時可以使用 NORECOVERY 或 STANDBY 選項。這可以手動或通過 SQL Server Management Studio 實現。

監視伺服器

監視伺服器是可選的,它可以跟蹤日誌傳送的所有細節,包括:

    • 主資料庫中事務日誌最近一次備份的時間。
    • 輔助伺服器最近一次複製和還原備份檔案的時間。
    • 有關任何備份失敗警報的資訊。

監視伺服器應獨立於主伺服器和輔助伺服器,以避免由於主伺服器或輔助伺服器的丟失而丟失關鍵資訊和中斷監視。一臺監視伺服器可以監視多個日誌傳送配置。在這種情況下,使用該監視伺服器的所有日誌傳送配置將共享一個警報作業。

 步驟方法

 在配置資料庫之前首先要將主資料庫進行一個完整備份,然後在輔助伺服器上進行還原,還原指令碼如下,注意保持資料庫為正在還原狀態(norecovery)

RESTORE DATABASE [test] FROM  DISK = N'D:\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Backup\test.bak' WITH  FILE = 1,  
MOVE N'test' TO N'D:\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\useData\test.mdf',  
MOVE N'test_log' TO N'D:\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\useData\test_1.ldf',  
NORECOVERY,  NOUNLOAD,  STATS = 10

1.配置主資料庫

選擇需要進行日誌傳輸的資料庫,滑鼠右鍵屬性-事務日誌傳輸-勾選"將此資料庫啟用為日誌傳輸配置中的主資料庫"

點選“備份設定”,此過程也就是建立一個主資料庫的備份計劃(LsBack_test123),在這裡之前你要在本機建立一個用於存放主資料庫的備份資料夾,同時你要將這個資料夾設共享,供輔助伺服器訪問,資料夾許可權設為everyone可讀寫,最後新增一個來賓組的讀取許可權,配置如下,同時你也可以對備份作業進行備份時間計劃,這個計劃具體根據備份需求

備份計劃

配置主資料庫要注意的地方主要就是共享資料夾的讀寫許可權問題。

2.配置輔助伺服器和資料庫

點選新增新增輔助資料庫

 

連線輔助伺服器(我這裡是做為測試連線的是本地伺服器,實際是需要連線輔助伺服器)

選擇複製檔案(該步驟會建立一個複製計劃“LSCopy_C-3A89048AF8DF4_test123”,將剛才主資料庫的日誌備份檔案複製到輔助伺服器中設定的資料夾中)

首先要在輔助伺服器(假如是:192.168.1.3)上建立一個共享資料夾,該資料夾許可權需要可以讀寫,可以設定為everyone可以讀寫許可權

該步驟計劃的計劃實際可以設定為最短時間也就是主資料庫備份完成立刻複製

還原事務日誌(該步驟會建立一個還原計劃“LSRestore_C-3A89048AF8DF4_test123”,將拷貝過來的日誌檔案在輔助伺服器上進行還原,同時可以選擇資料庫狀態是否截斷使用者連線)

同樣還原計劃時間可以間隔可以設定的比較短,可以第一時間還原備份

整個輔助伺服器就配置完成了,這樣同樣容易出現的問題就是輔助伺服器資料夾的共享問題,會出現拷貝不了的問題

3.監視伺服器配置

監視伺服器不是必須的選項也就是可以不進行配置,此過程就是建立一個監視作業(警報作業)“LSAlert_C-3A89048AF8DF4”

 總結

       事務日誌傳輸與跟複製訂閱相比:事務日誌傳輸操作更簡單而複製訂閱更具體;

       事務日誌傳輸與跟資料庫映象相比:事務日誌傳輸比資料庫映象的成本低,事務日誌傳輸也可以在單資料庫例項上進行,

  狀態圖:

備註:

本站點所有隨筆都是原創,歡迎大家轉載;但轉載時必須註明文章來源,且在文章開頭明顯處給明連結,否則保留追究責任的權利。

《歡迎交流討論》

相關推薦

SQL Server 事務日誌傳輸

概述        可以使用日誌傳送將事務日誌不間斷地從一個數據庫(主資料庫)傳送到另一個數據庫(輔助資料庫)。不間斷地備份主資料庫中的事務日誌,然後將它們複製並還原到輔助資料庫,這將使輔助資料庫與主資料庫基本保持同步。目標伺服器充當備份伺服器,並可以將查詢處理從主伺服器重新分配到一個或多個只讀的輔助伺服器

SQL Server事務日誌管理的進階,第5級:在完全恢復模式下管理日誌

SQL Server事務日誌管理的進階,第5級:在完全恢復模式下管理日誌   原文連結:http://www.sqlservercentral.com/articles/Stairway+Series/73785/   託尼·戴維斯(Tony Davis)著,2012年1月27日

翻譯《Stairway to SQL Server Replication: Level 5- Managing the Log in Full Recovery Mode》 SQL Server事務日誌管理的進階,第5級:在完全恢復模式下管理日誌

SQL Server事務日誌管理的進階,第5級:在完全恢復模式下管理日誌 SQL Server事務日誌管理的進階,第5級:在完全恢復模式下管理日誌 作者:託尼·戴維斯(Tony Davis) 時間:2012年1月27日  原文連結:http://www.sqlser

第五次翻譯:SQL Server事務日誌管理的進階,第5級:在完全恢復模式下管理日誌

 SQL Server中事務日誌管理的階梯,第5級:在完全恢復模式下管理日誌 作者:Tony Davis,2012/01/27 文章轉載自:http://www.sqlservercentral.com/articles/Stairway+Series/73785/   該系列

SQL SERVER 事務日誌已滿 處理辦法

一大早使用者就報,SQL SERVER日誌滿了。 執行語句參考: ALTER DATABASE CARDB SET RECOVERY SIMPLE WITH NO_WAIT GO ALTER

SQL SERVER 事務日誌檔案不停增長解決

1.3  日誌檔案不停增長 事務日誌檔案是一個SQL Server資料庫的另一個重要組成部分。每個資料庫都有事務日誌,用於記錄所有事務以及每個事務對資料庫所做的修改。為了提高資料庫的整體效能,SQL Server檢索資料時,將資料頁讀入緩衝區快取記憶體。資料修改不是直接在磁碟

SQL Server 事務隔離級別詳解

完成 sql 事務 create 事務隔離 測試數據 span read type off SQL 事務隔離級別 概述 隔離級別用於決定如果控制並發用戶如何讀寫數據的操作,同時對性能也有一定的影響作用。 步驟 事務隔離級別通過影響讀操作來間接地影響寫操作;可以在回

SQL SERVER進行日誌截斷

sql server如果sql server的日誌過大,需要進行日誌截斷。登陸sql server選擇數據庫,打開屬性,將日誌級別從完整調整成簡單,點擊確定。這時過去很大的log文件就已經失去了作用。再次打開屬性,將日誌級別從簡單改成完整。選擇數據庫,選擇收縮,選擇日誌。可看到99%都是可用,點擊確定,sql

SQL SERVER 事務例子

pda 存儲過程 creat 參數 結束 name 記錄 tro 事務 存儲過程格式: CREATE PROCEDURE YourProcedure AS BEGIN SET NOCOUNT ON; BEGIN TRY--------------

【SqlServer系列】淺談SQL Server事務與鎖(上篇)

架構 tab 要求 允許 ble 1.2 定義 由於 數據庫引擎 一 概述 在數據庫方面,對於非DBA的程序員來說,事務與鎖是一大難點,針對該難點,本篇文章試圖采用圖文的方式來與大家一起探討。 “淺談SQL Server 事務與鎖”這個專題共分

SQL Server 事務隔離級別

目前 lte log har 獲取 span 單用戶模式 最大 logs 參考文檔: https://docs.microsoft.com/zh-cn/sql/t-sql/statements/set-transaction-isolation-level-transact

SQL Server 事務與鎖

表鎖 沖突 png 使用 庫鎖 實現 有一種 圖片 div 事務就是作為一個邏輯工作單元的SQL語句,如果任何一個語句操作失敗那麽整個操作就被失敗,以後操作就會回滾到操作前狀態,或者是上個節點。為了確保要麽執行,要麽不執行,就可以使用事務。而鎖是實現事務的關鍵,鎖可以保證事

SQL Server事務

分享圖片 arch 但是 持久性 用戶 insert 原子 所有 兩種 簡介   事務是單個的工作單元,這就意味著單元內有多個操作,事務是多個操作的整合體。如果某個事務執行成功,則涵蓋在這個事務裏的所有數據操作均會一並執行提交,成為數據庫中的永久組成部分。 如果事務因某項操

sql server 錯誤日誌errorlog

08 r2 禁用 指定 ont 宋體 創建 啟動 損壞 失敗 一 .概述   SQL Server 將某些系統事件和用戶定義事件記錄到 SQL Server 錯誤日誌和 Microsoft Windows 應用程序日誌中。 這兩種日誌都會自動給所有記錄事件加上時間戳。 使用

SQL SERVER 事務鎖 (3)

資料庫的髒讀、不可重複讀、幻讀都和事務的隔離性有關。所以先了解一下事務的4大特性。 事務的4大特性(ACID): 原子性(Atomicity):事務是資料庫的邏輯工作單位,它對資料庫的修改要麼全部執行,要麼全部不執行。 一致性(Consistemcy):事務前後,資料庫的

sql server 跟蹤日誌

server sqlserve stat 死鎖 自動調用 重新啟動 eight tro error 1,當SQL Server錯誤日誌很大時,手工運行: exec sp_cycle_errorlog 系統存儲過程,即可使用新的日誌文件 sqlserver系統

sql server事務 鎖 儲存過程 索引 觸發器

1.事務:保證一個多操作的事情全部完成,否則回到做之前的狀態 begin try begin tran–設定反悔點,開啟事務 delete from UserInfo where UserId>5 delete from ClassInfo commit tran–不反悔,提交事務 e

Sql ServerSQL SERVER 收縮日誌

  事務日誌記錄著在相關資料庫上的操作,同時還儲存資料庫恢復(recovery)的相關資訊。   收縮日誌的原因有很多種,有些是考慮空間不足,有些則是應用程式限制導致的。   下面介紹的是在簡單模式下,進行收縮操作。 #方法一:通過圖形介面逐步操作 1、開啟資料庫屬性視窗 2、更改資料庫恢復模式

SQL server 事務介紹,建立與使用

事務(Transaction)事務是一種機制,一個操作序列,包含一組操作指令,並且把所有的命令作為一個整體一起向系統提交或撤銷操作請求(即要麼全部執行,要麼全部不執行) ---------------

SQL Server 錯誤日誌過濾(ERRORLOG)

一、背景   有一天我發現SQL Server伺服器的錯誤日誌中包括非常多關於sa使用者的登陸錯誤資訊:“Login failed for user 'sa'. 原因: 評估密碼時出錯。[客戶端: XX.XX.XX.XX]”。可是我很久之前就已經禁用了sa使用者,怎麼還會有那麼多的sa使用者登陸資訊呢?我猜