SqlServer 2012 異地備份

SqlServer 2012 異地備份

踩了很多坑,在Google和StackoverFlow的幫助下成功幫咱們項目中實現了SqlServer的異地備份。現記錄,以幫助須要之同行。shell

[TOC]數據庫

1、基本信息

文件服務器:(裏面有無數據庫不影響)

IP地址 192.168.33.**8
服務器系統 Windows Server 2012
服務器名稱 WIN-A6O73BD***

SqlServer數據庫所在服務器:

IP地址 192.168.33.**0
服務器系統 Windows Server 2012
服務器名稱 WIN-L6D5JH***
SqlServer版本 SqlServer 2012

2、在文件服務器上建立共享帳號及共享文件夾

一、 建立windows用戶

控制面板->管理工具->計算機管理->用戶和組->空白地方右鍵新建用戶,dbbakuser 密碼設置得複雜點;windows

新建windows帳號

二、建立共享文件夾

本地地址爲:C:\bakFolder(對應的網絡路徑爲\\WIN-A6O73B***\bakFolder服務器

設置共享文件夾的用戶爲【dbbakuser 】,並賦予讀取與更改的權限;

共享文件夾

在高級共享中作一樣的設置;

共享文件夾

測試用戶【dbbaker】可否正常訪問文件服務器

在數據庫服務器上打開cmd窗口,經過命令NET USE Z: \\WIN-A6O73B***\bakFolder 【此處填寫你設置的密碼】 /USER:dbbakuser網絡

3、新建做業

一、數據庫服務器上,使用DBMS中的SQL Server 代理新建做業;

常規設置

須要注意這裏的全部者,必須是sa或者與sa擁有同等權限的用戶; 名稱是必填項,其餘選項能夠不作改動;工具

Vue

新建步驟

步驟名稱是必填項;
命令以下,請對應修改:

sys.sp_configure @configname = 'allow_updates',
             @configvalue = 0;
RECONFIGURE WITH OVERRIDE;
GO

sys.sp_configure @configname = 'show advanced options',
             @configvalue = 1
RECONFIGURE 
GO 
sys.sp_configure @configname = 'xp_cmdshell',
             @configvalue = 1
RECONFIGURE
GO

DECLARE @bakpath NVARCHAR(500)
SET @bakpath = '\\WIN-A6O73B***\bakFolder\SanF***190_bakup_' + 
CONVERT(VARCHAR(10),GETDATE(),112) + '-' + REPLACE(CONVERT(VARCHAR(10),GETDATE(),108),':','') + '.bak'

EXEC master..xp_cmdshell "NET USE Z: \\WIN-A6O73B***\bakFolder 【此處填寫你設置的密碼】 /USER:dbbakuser"
BACKUP DATABASE SanFengNew TO DISK = @bakpath
GO 

sys.sp_configure @configname = 'xp_cmdshell',
             @configvalue = 0
RECONFIGURE
GO
sys.sp_configure @configname = 'show advanced options',
             @configvalue = 0
RECONFIGURE 
GO

sys.sp_configure @configname = 'allow_updates',
             @configvalue = 1; 
RECONFIGURE WITH OVERRIDE; 
GO

Vue

新建計劃

Vue

排查問題

在新建的做業上右鍵點擊做業執行步驟,則做業則會執行,會返回執行結果。 若是遇到問題,則能夠在新建的做業上右鍵點擊查看歷史記錄,裏面包含詳細的錯誤信息; 根據錯誤信息進行相應修改,直到做業成功執行。 查看歷史記錄的錯誤時請點開記錄前的+,以便查看詳細信息;測試

相關文章
相關標籤/搜索