• <u id="e6uoa"></u>
  • <tbody id="e6uoa"></tbody>
    <label id="e6uoa"><noscript id="e6uoa"></noscript></label>

    實戰 SQL Server 2008 日志傳送(Log Shipping)

    適用SQL Server2008-->SQL Server 2022



    數據庫學習 【2023-04-06 20:41】


    一、什么是日志傳送?

    原理很簡單,三個動作六個字:備份->復制->恢復。

    如果由人來完成這個三個動作,只能叫日志搬運工;而由SQL Server Job自動完成,就叫日志傳送。同樣的事情,不一樣的檔次,所以叫法也不一樣。

    二、日志傳送能解決什么問題?

    解決數據庫的多服務器熱備份問題。多臺服務器定時備份,隨時可以作為主數據庫服務器的替補。

    三、日志傳送的優點是什么?

    簡單!比SQL Server的數據庫復制、鏡像簡單多了。

    四、日志傳送的缺點是什么?

    日志文件的傳輸只支持Windows文件共享的方式,不支持FTP,就如同快遞公司只送本地,不送外地。所有備份服務器都要在同一個局域網內,所以準確的名字應該叫“日志本地傳送”。

    五、日志如何傳送?

    1. [主數據庫服務器]要傳送日志的數據庫的恢復模式必須是完全(Full)

    1.png

    2.  [主數據庫服務器]對要傳送日志的數據庫進行1次且僅此1次完全備份

    BACKUP DATABASE [CNBlogsJob] TO  DISK = N'F:\FullBackup\CNBlogsJob.bak' WITH NOFORMAT, INIT,  
    NAME = N'CNBlogsJob-Full Database Backup', SKIP, NOREWIND, NOUNLOAD, COMPRESSION,  STATS = 10
    GO

    3.  [備份數據庫服務器]將完全備份文件復制到備份數據庫服務器上,并以STANDBY的方式進行恢復

    RESTORE DATABASE [CNBlogsJob] 
    FROM  DISK = N'F:\FullBackup\CNBlogsJob.bak' WITH FILE = 1,  
    MOVE N'CNBlogsJob' TO N'D:\Data\CNBlogsJob.mdf',  
    MOVE N'CNBlogsJob_log' TO N'E:\Logs\CNBlogsJob.LDF',  
    STANDBY = N'F:\Standby\ROLLBACK_UNDO_CNBlogsJob.BAK', NOUNLOAD, STATS = 10
    GO



    恢復成功后,SQL Server管理工具中會顯示如下圖所示的狀態:

    2.png

    4. [備份數據庫服務器]創建一個普通的Windows用戶帳戶(比如logshipper),將該用戶加入到以SQLServerSQLAgentUser開頭的組(未驗證是否可以不加,必須加入否則會配置不成功),并將該用戶設置為SQL Server Agent的運行帳戶。

    3.png

    5. [備份數據庫服務器]創建一個文件夾(比如F:\LogBackup),用于存放從主數據庫復制過來的日志文件。

    6. [主數據庫服務器]創建與備份數據庫服務器同名同密碼的Windows用戶帳戶(比如這里是logshipper)。

    7. [主數據庫服務器]創建存放日志備份文件的文件夾,并將該文件夾以只讀權限共享給logshipper。假設文件名稱是LogBackup,主數據庫服務器名稱是dbserver,通過設置共享讓備份數據庫服務器可以訪問共享路徑 \\dbserver\LogBackup 。

    8. [主數據庫服務器]選擇要進行日志傳送的數據庫,打開屬性窗口,進入Transaction Log Shipping窗口,勾選Enable this as a primary database in a log shipping configuration,然后點擊Backup Settings打開日志傳送備份設置窗口,如下圖:

    4.png

    \\dbserver\LogBackup 就是給備份數據庫服務器訪問的共享路徑。

    F:\LogBackup 是主數據庫服務器保存日志備份文件的路徑。

    9. [主數據庫服務器]繼續回到Transaction Log Shipping窗口,在Secondary databases部分點擊Add按鈕,連接至備份數據庫服務器,選擇對應的數據庫;在Initialize Secondary Database窗口中,選擇"No, the secondary database is initialized";在Copy Files窗口中,輸入備份數據庫服務器中存放備份日志文件的路徑(比如F:\LogBackup);在Restore Transaction Log窗口中,選擇Standby mode。

    5.png

    6.png

    7.png

    10. 成功設置之后,日志傳送就開始工作了。主數據服務器上的Job根據設定的時間間隔定時地備份當前數據庫的日志,將日志文件保存至本機的文件夾(比如F:\LogBackup);備份數據服務器上的Job不斷地通過共享文件夾(比如\\dbserver\LogBackup)從主數據庫服務器復制日志文件到本機的文件夾(比如F:\LogBackup),然后將日志文件恢復至處于Standby狀態的數據庫中。


    文章來源:https://www.cnblogs.com/forint/p/4138429.html


    友情鏈接:
    SQL數據庫修復專家
    • 關注微博
      聯系QQ
    • 二維碼
    • 掃一掃加關注

    ——信陽市速全網絡科技有限公司——

    版權所有:信陽市速全網絡科技有限公司

    豫ICP備19030104號-2

    国产精品无码综合区_自慰喷水网站_黄色视频在线免费观看_国产亚洲成AV在线下载