SQL server數據庫高可用日志傳送的方法
SQL Server 使用日志傳送,您可以自動將“主服務器”實例上“主數據庫”內的事務日志備份發送到單獨“輔助服務器”實例上的一個或多個“...
SQL Server 使用日志傳送,您可以自動將“主服務器”實例上“主數據庫”內的事務日志備份發送到單獨“輔助服務器”實例上的一個或多個“輔助數據庫”,下面這篇文章主要給大家介紹了關于sql server數據庫高可用日志傳送的相關資料,需要的朋友可以參考下。
一. 日志傳送概述
SQL Server使用日志傳送,可以自動將主服務器的事務日志備份發送到一個或多個輔助數據庫上。事務日志備份分別應用于每個輔助數據庫。 可選的第三個服務器實例(稱為“監視服務器”)記錄備份和還原操作的歷史記錄及狀態,還可以在無法按計劃執行這些操作時引發警報。
可選的監視服務器,記錄備份和還原操作的歷史記錄及狀態。
下面話不多說了,來一起看看詳細的介紹吧。
優點
- 提供災難恢復解決方案
- 支持對輔助數據庫的受限的只讀訪問權限
- 允許用戶定義日志發送的延遲時間(如果主數據庫上的數據被意外更改,則較長的延遲會很有用)
術語和定義
備份作業
主服務器的代理作業,它執行備份操作,將事務日志記錄到本地服務器和監視服務器,刪除舊的記錄。
復制作業
主服務器的代理作業,它將備份文件從主服務器復制到輔助服務器上,在輔助服務器和監視服務器上記錄。
還原作業
輔助服務器的代理作業,備份文件還原到輔助數據庫,在本地服務器和監視服務器上記錄,刪除舊文件。
針對多個輔助服務器時,要重復執行復制作業和還原作業。
二. 準備工作
同一臺服務數據庫二個實例 (可以是局域網內的多個服務器)
主數據庫sqlserver 2012 r2 MsSQLSERVERTWO
輔助數據庫sqlserver 2012 r2 MSSQLSERVER
演示庫 LogShipping_Test, 主和輔相同的庫,相同的表結構和數據。 相同的sql 登錄名, 密碼
三. 配置日志傳送
--步驟1:設置主服務器恢復模式為完全備份
ALTER
DATABASE
LogShipping_Test
SET
RECOVERY
FULL
--步驟2:主服務數據庫做一次完全備份
BACKUP
DATABASE
LogShipping_Test
TO
DISK=
'D:\LogShipping\LogShipping_Test.bak'
WITH
NOFORMAT,INIT
-- 步驟3:
在主服務器上建立共享目錄C:\LogShipping\primary 具有作業訪問權限
在輔助服務器上建立共享目錄C:\LogShipping\secondary 具有作業訪問權限
---步驟4:
主服務器LogShipping_Test庫-->屬性-->任務-->傳送事務日志將主服務器和輔助數據庫配置成功后,設置復制和還原每隔兩分鐘做一次傳送如下圖
日志傳送配置成功后:輔助數據庫標識為(備用/只讀)如下圖
主數據庫SQL Server代理作業如下圖:
備份作業(LSBackup_LogShipping_Test)
警告作業(LSAlert_{計算機名})
輔助數據庫SQL Server代理作業如下圖
復制作業(LSCopy_{計算機名}_LogShipping_Test)
還原作業(LSRestore_{計算機名}_LogShipping_Test)
警告作業(LSAlert_{計算機名}\MSSQLSERVERTWO)
主服務器隔2分鐘備份的文件共享目錄如下圖
輔助服務器隔2分鐘復制的文件共享目錄如下圖
最后:查看日志傳送是否正確無誤
利用可視化操作在SQL Server代理作業中查看日志傳送是否正常
通過SQL查詢,看日志傳送是否運行正常
--(主數據庫查詢)
exec
master..sp_help_log_shipping_monitor
exec
master..sp_help_log_shipping_primary_database
'LogShipping_Test'
--(輔助數據庫查詢)
exec
master..sp_help_log_shipping_secondary_database
'LogShipping_Test'
四. 主從數據庫手動切換配置
步驟1:在主數據庫,使之處于正在還原
use master
Backup log [LogShipping_Test]
to
disk =
'c:\LogShipping\LogShipping_Test1.bak'
with
NORECOVERY
--手動運行輔助數據庫上的復制和還原作業(快速復制還原到從表)
--手動將主數據庫上的備份和警告作業禁用掉(停止備份)
步驟2:在輔助數據庫上,使用步驟的備件文件還原
use master
Restore log [LogShipping_Test]
from
disk =
'c:\LogShipping\LogShipping_Test1.bak'
with
RECOVERY
將以前備份和復制所在文件夾的數據刪除掉(D:\LogShipping\primary,D:\LogShipping\secondary )
重新配置日志傳送,在輔助數據庫上(LogShipping_Test庫-->屬性-->任務-->傳送事務日志將主服務器和輔助數據庫配置成功后)使輔助數據庫之變成主數據庫
將原來主數據庫的日志傳送刪除(LogShipping_Test庫-->屬性-->任務-->傳送事務日志,將勾選去掉確定).
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,
Sql Server數據庫開窗函數Over()的使用實例詳解
文章主要介紹了Sql Server 開窗函數Over()的使用,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下利用over(),將統計信息計算出來,然后直接篩選結果集 declare @t table(...
SQL Server在分頁獲取數據的同時獲取到總記錄數的兩種方法
本文通過兩種方法給大家介紹SQL Server 在分頁獲取數據的同時獲取到總記錄數,感興趣的朋友跟隨腳本之家小編一起學習吧。SQL Server 獲取數據的總記錄數,有兩種方式:1.先分頁獲...
Sql Server 數據庫中調用dll文件的過程
文章主要介紹了Sql Server 數據庫中調用dll文件的過程,非常不錯,具有一定的參考借鑒價值,感興趣的朋友跟隨小編一起學習吧...
Sql Server 數據庫獲取字符串中小寫字母的SQL語句
文章主要介紹了SqlServer 獲取字符串中小寫字母的實現方法,非常不錯,具有一定的參考借鑒價值,需要的朋友跟隨腳本之家小編一起學習吧有時候我們會截取字符串中的一些特殊想要的...
Sql Server數據庫如何去掉內容里面的Html標簽
文章主要介紹了Sql Server 去掉內容里邊的Html標簽的實現方法,代碼超簡單,具有一定的參考借鑒價值,需要的朋友可以參考下。...
SQL Server數據庫遠程更新目標表數據的存儲過程
文章主要介紹了SQL Server 遠程更新目標表數據的存儲過程,適用于更新列名一致,主鍵為Int類型,具體實例代碼大家參考下本文本文給大家分享一個遠程更新目標庫數據的存儲過程,適用...
MsSql 數據庫使用sqlplus創建DDL和DML操作方法
文章主要介紹了使用sqlplus創建DDL和DML操作方法,需要的朋友可以參考下,在window進入命令行模式敲sqlplus就會...
SQL Server常見問題介紹及快速解決建議
本文旨在幫助SQL Server數據庫的使用人員了解常見的問題,及快速解決這些問題。這些問題是數據庫的常規管理問題,對于很多對數據庫沒有深入了解的朋友提供一個大概的常見問題框架。...
SQL Server中Table字典數據的查詢SQL示例代碼
文章主要給大家介紹了關于SQL Server中Table字典數據的查詢SQL的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著...
SQL SERVER 2012數據庫自動備份的方法
文章主要為大家詳細介紹了SQL SERVER 2012數據庫自動備份的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下為了防止數據丟失,這里給大家介紹SQL SERVER2012數據自動備...