SQL數據庫自動備份并刪除源文件的實現
SQL數據庫的備份是DBA都需要知道的,下面就將為您介紹如何讓產生后的備份文件自動壓縮并刪除源文件的方法,供您參考,希望對您有所幫助。
其實這里利用的是winrar的命令行來執行壓縮并刪除源文件的方法的
winrar命令行的壓縮命令是[winrar路徑] a [參數] [壓縮后的路徑] [需要壓縮的文件路徑],這是本文需要用到的命令格式
之后我們就要解決如何讓SQL來執行這個命令行了
方法就是調用SQL的exec master..xp_cmdshell @cmd的存儲過程方法來執行,這樣我們就能夠實現我們的目的了,這其實在我前面的文章介紹過
大概方向已經取得,之后就是按實際要求來操作它們了,這里我只講我的使用方法,其他具體的還是要看大家的具體需要的
我的SQL備份是每天都要執行的,所以我在設置自動備份的時候就是把備份文件名設置成當天日期的格式的
這是備份的命令:
declare @filename varchar(100)
set @filename='D:\'+convert(char(10),getdate(),120) --設置備份文件的路徑和文件名
print @filename
backup database[databasename] to disk=@filename with NOINIT,NOUNLOAD,NAME='backup',NOSKIP,STATS=10,NOFORMAT --執行備份
這是壓縮并刪除源文件的命令:
declare @file varchar(100)
set @file='c:\winrar.exe a -ep -df D:\'+convert(char(10),getdate(),120)+'.rar D:\'+convert(char(10),getdate(),120) --將壓縮備份文件并刪除源文件的winrar命令行命令
exec master..xp_cmdshell @file --執行命令
【編輯推薦】
sql server端口號配置的方法詳解