SQL Server自動備份 備份到本地或者遠程服務器

0.1 在SQLServer2008 --> 備份數據庫 --> 安全 --> 新建用戶 --> 用戶名
                                       選擇該windows用戶 (確保 --> 機器名/人名 --> 是正確的,由於有換機器名的可能性)
                                     數據庫角色成員身份 --> db_owner
                                                       
1.設置
登陸SQLServer2008 --> 管理 --> 維護計劃 --> 維護計劃嚮導 --> 名稱: xx備份
                                     --> 更改 執行:每週
                                          執行間隔:1周 在 周幾
                                          天天頻率:執行一次     時間 00:00
                                          開始時間:   
                                     肯定
                                 --> 選擇維護任務: 備份數據庫(完整)
                                 --> 下一步
                                 --> 選擇數據庫
                                     爲每一個數據庫建立備份文件
                                          文件夾:選擇目標(能夠是遠程的目錄 --> 須要配置腳本見:4.) 
                                     壓縮
                                 --> 下一步
                                 --> 下一步
                                 --> 檢查
         編輯 --> 保存 --> 關閉(不然可能無效)
 
2.維護計劃 --> 執行 (測試)
 
3.0.計算機 --> 管理 --> 服務 --> SQL Server 代理 (MSSQLSERVER) --> 自動 (必須確保它是自啓動)
 
3.1SQLServer2008 --> SQL Server 代理
     --> 做業(可能和維護計劃不一樣) --> xx備份.Subplan_1(子計劃的名稱) -->
     右鍵 --> 屬性 --> 計劃 --> 編輯(這裏只作查看用,最好 --> 維護計劃 --> 編輯 --> 保存)
                                               右鍵 --> 開始做業步驟(測試該做業是否能夠運行)
                                               右鍵 --> 啓動(或禁止)
查看做業狀態
 
SQLServer2008 --> SQL Server 代理 --> 做業活動監視器 --> 下次執行時間、狀態等
全新備份到遠程目錄(定時執行SQL版)
  SQLServer2008 --> SQL Server 代理 --> 新建做業
     常規 --> 名稱:自動備份(遠程)
          全部者:?
         類型:數據庫維護
     步驟 --> 新建 -->
              常規 -->名稱:執行備份SQL
                 類型 --> 選擇Transact-SQL 腳本(T-SQL)
                                    數據庫 --> msdb?
                 命令:下面的SQL代碼
                   按鈕 --> 分析 --> 已成功
              高級 -->做爲如下用戶運行 --> ?
              肯定
     計劃 --> 新建 -->
              名稱:自動備份(遠程)-計劃
              計劃類型:重複執行 --> 已啓動 --> 選中
     通知 --> 寫入Windows應用程序事件日誌 --> 選中 --> 看成業完成時(或其它)
     肯定
 
    測試 -->  開始做業步驟
    確保它 --> 右鍵 --> 啓動(即沒有禁用圖標)
             
        
SQL代碼
EXEC sp_configure 'show advanced options', 1;RECONFIGURE;
EXEC sp_configure 'xp_cmdshell', 1;RECONFIGURE;
 
declare @machine nvarchar(50) = '192.168.200.175'       --服務器IP
declare @path nvarchar(50) = '208bf'               --服務器共享目錄名稱
declare @user nvarchar(50) = 'happy'               --服務器的用戶名
declare @pwd nvarchar(50) = '
 '                    --服務器的密碼
declare @database nvarchar(50)  = 'SmartMPM'            --本地要備份的數據庫名稱
 
if left(@path,1) != '\' set @path = '\'+@path
declare @sql nvarchar(800) = 'net
 use \\'+@machine+@path+' "'+@pwd+'"
 /user:'+@machine+'\'+@user
--創建鏈接相似:'net use \\192.168.200.175\208bf " " /user:192.168.200.175\happy'
Exec xp_cmdshell @sql
 
declare @date datetime = getdate();
Declare @fileName nvarchar(200) = '\\'+@machine+@path+'\'+@database + replace(Convert(nvarchar,@date,120 ) ,':','_') + '.bak'
--備份數據庫
Backup Database SmartMPM To disk = @fileName With Format
 
set @sql = 'net use \\'+@machine+@path+'
 /delete'
--斷開鏈接相似:'net use \\192.168.200.175\208bf /delete'
Exec xp_cmdshell @sql
相關文章
相關標籤/搜索