sql server 定时备份数据库
生活随笔
收集整理的這篇文章主要介紹了
sql server 定时备份数据库
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
CREATE PROCEDURE [dbo].[SP_DBBackup_EveryNight_Local]
@cycle INT, ---保存周期
@IsLocal INT, ---是否為本地 0表示是 1表示否
@SavePath NVARCHAR(100), ---文件保存路徑 \\192.168.19.1\DataBaseBack
@DBPrefix NVARCHAR(50), ---生成文件的前綴
@Server VARCHAR(50), ---服務(wù)器IP 192.168.19.1
@UserName VARCHAR(50), ---登錄服務(wù)器用戶名 administrator
@PassWord VARCHAR(20) ---登錄服務(wù)器密碼 2016
ASBEGIN DECLARE @backpath2 VARCHAR(100) DECLARE @command VARCHAR(200) --創(chuàng)建臨時(shí)表CREATE TABLE #Filetabel(FILEPATH VARCHAR(100) NULL)--調(diào)用dos命令登錄服務(wù)器IF @IsLocal = 1BEGINSET @command = 'net use ' + @SavePath + ' ' + @PassWord + ' /user:' + @Server + '\' + @UserName EXEC master..xp_cmdshell @command END--將共享目錄所有文件名添加至臨時(shí)表SET @command = 'dir /b ' + @SavePathINSERT INTO #FiletabelEXEC master..xp_cmdshell @commandDELETE FROM #FiletabelWHERE FILEPATH IS NULLWHILE EXISTS ( SELECT *FROM #Filetabel )BEGINDECLARE @fileName VARCHAR(100)SET @fileName = ( SELECT TOP 1*FROM #FiletabelORDER BY FILEPATH)--定義變量獲取文件時(shí)間DECLARE @fileTime VARCHAR(20)DECLARE @fDateTime DATETIMEIF @fileName IS NOT NULLBEGINSET @fileTime = SUBSTRING(@fileName, 17, 8)SET @fDateTime = CONVERT(DATETIME, @fileTime)DECLARE @lastTime DATETIMESET @lastTime = DATEADD(DAY, -@cycle,CONVERT(VARCHAR(10), GETDATE(), 111))IF @fDateTime <= @lastTimeBEGIN --刪除備份DECLARE @filePath VARCHAR(100)SET @filePath = 'del ' + @SavePath + '\' + @fileNameEXEC master..xp_cmdshell @filePathEND--刪除該條數(shù)據(jù)DELETE FROM #FiletabelWHERE FILEPATH = @fileNameENDEND--刪除臨時(shí)表DROP TABLE #Filetabel--將數(shù)據(jù)庫(kù)備份到服務(wù)器SET @backpath2 = @SavePath + '\' + @DBPrefix + '_' + REPLACE(CONVERT(VARCHAR(10), GETDATE(), 120),'-', '') + '_back.bak' BACKUP DATABASE [LGS] TO DISK=@backpath2 WITH INIT ,FORMAT END
GO
執(zhí)行EXEC [dbo].[SP_DBBackup_EveryNight_Local] 5,0,'F:\LGS_Back','LGS','','',''
轉(zhuǎn)載于:https://www.cnblogs.com/TBW-Superhero/p/6382217.html
總結(jié)
以上是生活随笔為你收集整理的sql server 定时备份数据库的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: maven 太垃圾
- 下一篇: linux cmake编译源码,linu