Sqlserver2012(主從復制)共享同步日志備份恢復

SQL Server 2012相對于SQL Server 2008來說,無論是性能還是功能都有一個相當大的提高,甚至可以用“革命”來形容這一次升級。SQL Server 2012使 SQL Server 躋身于企業級數據庫行列。在數據高可用性方面,SQL Server 2012為用戶提供了數據鏡像、復制、故障轉移群集、日志傳送功能。簡單介紹SQL Server 2012日志傳送功能。 

  一、 日志傳送簡介 

   日志傳送一般有主服務器、輔助服務器、監視服務器組成。主服務器一般是存儲生產數據庫的服務器,輔助服務器用來存儲主服務器上生產數據庫的副 本,監視服務器用來記錄日志傳送的所有細節服務器,監視服務器是可選的。日志傳送是將主服務器的生產數據庫的事務日志復制到輔助服務器并在輔助服務器還 原,從而實現主服務器生產數據庫和輔助服務器數據庫副本數據的一致。

blob.png

     圖1

 日志傳送要求主服務器生產數據庫的日志恢復模式是完全或者大容量日志模式,將數據庫切換為簡單恢復模式會導致日志傳送停止工作。輔助服務器是用來保存主 數據庫的最新備份的服務器。一臺輔助服務器可以包含多臺不同主服務器中數據庫的備份副本。例如,某個部門可能有五臺服務器,每臺服務器都運行關鍵數據庫系 統。在這種情況下,可以只使用一臺輔助服務器,而不必使用五臺單獨的輔助服務器。五個主系統上的備份都可以加載到這個備份系統中,從而減少所需的資源數量 并節省開支。監視服務器應獨立于主服務器和輔助服務器,以避免由于主服務器或輔助服務器的丟失而丟失關鍵信息和中斷監視。一臺監視服務器可以監視多個日志 傳送配置。在這種情況下,使用該監視服務器的所有日志傳送配置將共享一個警報作業。 

  日志傳送操作由四個操作組成:備份作業、復制作業、還原作業和警報作業。 

  ?備份作業,日志傳送在主服務器實例上為每個主數據庫創建一個備份作業。它執行備份操作,將歷史記錄信息記錄到本地服務器和監視服務器上,并刪除舊備份文件和歷史記錄信息。 

  ?復制作業,日志傳送在輔助服務器實例上為每個日志傳送配置創建一個復制作業。此作業將備份文件從主服務器復制到輔助服務器,并在輔助服務器和監視服務器上記錄歷史記錄信息。 

  ?還原作業,日志傳送在輔助服務器實例上為每個日志傳送配置創建一個還原作業。此作業將復制的備份文件還原到輔助數據庫。它將歷史記錄信息記錄在本地服務器和監視服務器上,并刪除舊文件和舊歷史記錄信息。 

  ?警報作業,如果使用了監視服務器,將在警報監視器服務器實例上創建一個警報作業。此警報作業由使用監視器服務器實例的所有日志傳送配置中的主數據庫和 輔助數據庫所共享。對警報作業進行的任何更改(例如,重新計劃作業、禁用作業或啟用作業)會影響所有使用監視服務器的數據庫。

   二、配置實例  

 1、準備工作 

  首先確保生產數據庫日志恢復模式為大容量日志模式或者是完整模式。若恢復模式為簡單,則在設置“將此數據啟用為日志傳送中配置中的主數據庫”時出錯。 

   其次規劃事務日志存放目錄,存放事務日志目錄要求有兩個,一個用來存放主服務器備份,一個用來存放輔助服務器還原的備份文件。這兩個目錄可以分別建在主 服務器和輔助服務器上,但是更好的做法是把主服務器的備份目錄放在某文件服務器上,這樣可以減少主服務器的I/O讀寫次數。 

  修改主服務 器和輔助服務器上的 Sqladmin啟動賬號。在主服務器上,定時備份事務日志是通過SQL作業來完成,確保啟動Sqladmin賬號能夠訪問用來存放由備份作業產生的事務日志目錄。輔助服務器上復制作業和備份作業同樣是由Sqladmin 作業完成,確保的啟動Sqladmin賬號要求能夠訪問主服務器存放事務日志的目錄,同時也要求能夠訪問由復制作業復制過來用來存放輔助服務器還原的事務日志的目錄。  

 2、配置步驟 

  為了說明配置步驟,筆者在同一臺機器上裝了二個實例:SERVER01,SRVER02,筆者的機器名稱為DB_Backup,規劃了2個文件夾, D:\DB_Backup用為存放主數據庫的完整備份,用于初始化輔助服務器,這個文件夾要求輔助服務器的啟動Sqladmin賬號能訪問; D:\DB_Backup用來存放由備份作業備份出來的主服務器的事務日志,設置成共享文件夾,這個文件夾要求輔助服務器的啟動 Sqladmin賬號能訪問; D:\DB_Backup用來存放由輔助服務器上復制作業從主服務器的復制過來的主服務器的事務日志,也設置成共享的,這個 文件夾要求輔助服務器的啟動Sqladmin賬號能訪問(如圖2所示)。

blob.png

SERVER01設置成為主服務器,主數據庫為datbaseR。將SERVER02設置成為輔助服務器。 

  第一步:備份主數據庫到 D:\DB_Backup database.BAK(主數據庫的完整備份)。 

  第二步:在 SERVER01database數據庫上單擊右鍵,選擇”任務”中的“傳送事務日志”,打開事務日志傳送配置窗口,單擊“將此數據庫啟用為日志傳送配置中的主數據庫 ”(如圖3所示)

blob.png


實驗一


1.案例架構圖

blob.png 

機器

目錄

備注

Master-192.168.250.168

\\:    D:\DB_Backup

Sqladmin用戶密碼一致

Slave-192.168.250.169

\\:    D:\DB_Backup

Sqladmin用戶密碼一致

2.    部署調試

(1)   配置(分別在168169服務器上創建sqladmin用戶)

blob.png

(2)調整權限

blob.png

(3)創建共享目錄(分別在168169服務器上創建)并給予添加sqladmin權限

blob.png

(4)修改(兩臺)mmsql的管理器配置sqladmin

blob.png

(5)修改(兩臺)sqlserver\Administrator 賬戶的身份驗證模式服務器代理模式

登陸sqlserver

blob.png

blob.png

(6)實施制定作業的配置

blob.png

設置開始(包括日志創建的時間)

blob.png

添加輔助服務器配置slave-169

blob.png

填寫本地的slave日志存放目錄

blob.png

設置日志恢復數據庫的時間

blob.png

保存配置腳本

blob.png

沒事可以研究下

點擊確定(最后顯示日志備份的結果)

查看從服務數據庫的結果

blob.png


3.數據庫測試

(1)測試日志數據同步效果

blob.png

blob.png

Master-192.168.250.168主服務上創建測試表ttt_student

blob.png


查看結果:slave-192.168.250.179

blob.png


4.細節

根據調度備份時間來恢復slave的數據

blob.png

以上就是sqlserver2012通過日志同步還原備份


5.幾個建議

1.sqlserver日志實時同步時會在造成數據當前連接數終端!

2.以上環境建議在域環境中部署?。?!

3.在內網中部署,避免額外的流量開銷。

4.請大家多多指點了。




原創文章,作者:zzxtbl,如若轉載,請注明出處:http://www.www58058.com/9079

(3)
zzxtblzzxtbl
上一篇 2015-10-27
下一篇 2015-10-31

相關推薦

  • Linux命令幫助文檔的使用及簡單命令使用-2016-7-25

    Linux命令幫助文檔的使用   相關命令 whatis    COMMAND –help    man and info 本地幫助文檔/usr/share/doc   在使用系統內建的幫助文檔之前,我們需要了解需要命令幫助是否是內部命令和外部命令…

    Linux干貨 2016-08-04
  • ansible之Playbook中tags使用

    示例:httpd.yml– hosts: websrvsremote_user: roottasks:– name: Install httpdyum: name=httpd state=present – name: Install configure filecopy: src=files/httpd.conf des…

    Linux干貨 2018-01-14
  • Linux下的一些命令的認識及用法

    date+%F(顯示年月日)+%T(顯示時間)+%Y(顯示年)+%m(顯示月)+%d(顯示日)+%H(顯示小時)+%M(顯示分鐘)+%S(顯示秒)+%s( seconds since 1970-01-01 00:00:00 UTC)         +%w(顯示星期幾)+%a(locale’s abbrevi…

    2017-07-22
  • 用戶管理、三種權限、三種特殊權限的使用

    用戶管理、三種權限、三種特殊權限的使用 一、用戶管理 1、軟鏈接:ln  -s  相對于軟鏈接的路徑/絕對路徑   軟鏈接文件    硬鏈接:ln  相對路徑原文件   硬鏈接文件 2、getent的使用    gentent p…

    系統運維 2016-08-05
  • 腳本練習

    注:以下腳本練習實驗都是以root用戶身份執行的,若普通用戶運行需要另加相應的權限 1、編寫腳本/root/bin/systeminfo.sh,顯示當前主機系統信息,包括主機名,IPv4地址,操作系統版本,內核版本,CPU型號,內存大小,硬盤大小。 [root@fengl bin]# vim systeminfo.sh [roo…

    Linux干貨 2016-08-15
  • 面向對象簡單介紹

    面向對象簡單介紹

    Linux干貨 2017-11-12

評論列表(1條)

  • stanley
    stanley 2015-10-31 22:22

    置頂了,寫的可是詳細,只是少了些格式,但詳盡的內容彌補了這塊不足,如有更好

欧美性久久久久