SqlServer 备份脚本结合代理作业,自动备份数据库

十年河东,十年河西,莫欺少年穷

学无止境,精益求精

1、SQL备份脚本如下:

declare @date nvarchar(10) --定义日期变量
set @date = CONVERT(nvarchar(10),getdate(),112) --为日期变量赋当前日期,日期格式为 yyyymmdd 举例 20170830
declare @path nvarchar(250) -- 定义备份路径变量
set @path = 'D:\dbbak\' --赋值
declare @db_filename nvarchar(150) --定义文件名变量
set @db_filename = @path + 'db_'+@date+'.bak' --拼字符串,形成完整的备份文件路径
backup database DBNAME TO DISK=@db_filename --执行数据库备份操作,注意 DBNAME为你实际要备份的数据库名,记得改

2、新建SQLSERVER代理作业 【记得在SQLSERVER配置管理器-服务中,开启你的SQLSERVER代理服务】

右键,新建代理作业

2.1、常规

 

 2.2、步骤,新建步骤

 

 3、计划,新建计划

 

 每六个小时执行一次SQL脚本

最后,通知,警告可以不填。

保存后,六小时后既可以自动备份。

最后,贴出还原数据库的脚本,如下:

declare @date nvarchar(10) --定义日期变量
set @date = CONVERT(nvarchar(10),getdate(),112) --为日期变量赋当前日期,日期格式为 yyyymmdd 举例 20170830
declare @path nvarchar(250) -- 定义备份路径变量
set @path = 'D:\dbbak\' --赋值
declare @db_filename nvarchar(150) --定义文件名变量
set @db_filename = @path + 'db_'+@date+'.bak' --拼字符串,形成完整的备份文件路径
restore database DBNAME from DISK=@db_filename --执行数据库还原操作,注意 DBNAME为你实际要备份的数据库名,记得改

参考文档:https://www.cnblogs.com/want990/p/7453536.html

declare @date nvarchar(10) 
set @date = CONVERT(nvarchar(10),getdate(),112)
declare @path nvarchar(250) 
set @path = 'D:\DataBaseBackUp\' 
declare @db_filename nvarchar(150)
set @db_filename = @path + 'WuAnDB_'+@date+'.bak'
backup database WuAnDB TO DISK=@db_filename
View Code

@天才卧龙的博客

posted @ 2021-08-30 19:02  天才卧龙  阅读(921)  评论(2编辑  收藏  举报