MicrosoftSQLServer数据库定时备份(备份计划)的几种方式

本文详细介绍SQLServer数据库的两种备份计划方式,包括备份脚本的编写与执行,以及如何通过脚本删除过期的备份文件。同时,文章还提供了在SQLServer中启用xp_cmdshell函数的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 首先,做备份计划钱,先要查看下SQL Server代理是否开启

进入主题

1、备份计划方式1:

1.1新增数据库备份作业:

 

 

 

 

备份脚本:

declare @name varchar(250) 
set @name='F:\ErpDbBackup\ZRErp'+rtrim(convert(varchar,getdate(),112))+'.bak' 
BACKUP DATABASE[ZR_Erp] TO  
DISK=@name 
WITH NOFORMAT, NOINIT,  
NAME = N'ZR_Erp-完整 数据库 备份', 
SKIP, NOREWIND, NOUNLOAD
go

 

 

1.2新增备份数据库删除作业

 

 删除备份脚本(该删除脚本需要用到 xp_cmdshell 函数, 函数的使用是要开启对应设置的,开启的设置在下面有进行讲解,如果不想开启,可以使用备份计划方式2中的删除脚本):

 --删除15天前备份文件 
declare @cmd varchar(60)
set @cmd='del F:\ErpDbBackup\ZRErp'+rtrim(convert(varchar,getdate()-15,112))+'.bak' 
exec xp_cmdshell @cmd
go

 

ps:xp_cmdshell 函数如果无法正常调用,可以用尝试一下办法处理:

通过查询分析器,选择Master数据库,然后执行以下SQL内容:

sp_configure 'show advanced options',1
reconfigure
go
sp_configure 'xp_cmdshell',1
reconfigure
go

也可以不通过代码启动,通过“功能的外围应用配置器“开启

 

 

 

1.3管理计划:查看计划中对应是否正常

 

 

 2、备份计划方式2:基本步骤和方式1一样,只是删除数据库的脚本有变(由于SQL版本的问题,会导致该脚本无法使用,在这种情况下,还是建议用方式1的方法来进行制作备案计划)

2.1新增数据库备份作业:(同备份计划方式1一样)

2.2新增备份数据库删除作业(同备份计划方式1一样,脚本不同,如下所示)

删除备份脚本:

----只保留3天内的备份数据---
DECLARE @OLDDATE DATETIME
SELECT @OLDDATE=GETDATE()-3
EXECUTE master.dbo.xp_delete_file 0,N'D:\BACKUP',N'bak',@olddate

 2.3管理计划:(同备份计划方式1一样)

转载于:https://www.cnblogs.com/douf/p/9936333.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值