【Sql Server】实现数据库定时自动备份详细一步步操作(图文)
2023-09-11 14:15:10 时间
一、新建数据库(如:数据库定时备份)
二、新建存储过程,代码如下,注意3个地方需要改数据库名称
USE [数据库定时备份]
GO
/****** Object: StoredProcedure [dbo].[定时备份_Huji] Script Date: 10/03/2022 17:33:40 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
--Alter PROCEDURE [dbo].[类_定时备份]
ALTER PROCEDURE [dbo].[定时备份_Huji]
@bak_path varchar(30) = 'D:\sql定时备份' -- 表名称
As
BEGIN
SET NOCOUNT ON;
declare @bak_path_bf varchar(150) = 'D:\sql定时备份\Huji_'+convert(varchar(10),getdate(),120)+'_'+DateName(hour,GetDate()) +'_'+DateName(minute,GetDate()) +'_'+DateName(second,GetDate())+'.bak' -- 表名称
BACKUP DATABASE Huji TO DISK = @bak_path_bf
--declare @bak_path nvarchar(4000)
set @bak_path ='D:\sql定时备份\' --备份路径;
declare @baktype int
set @baktype = 0 --备份类型为全备,1为差异备,2为日志备份
declare @type int
set @type = 3 --设置需要备份的库,0为全部库,1为系统库,2为全部用户库,3为指定库,4为排除指定库;
declare @dbnames nvarchar(4000)
set @dbnames ='Huji' --需要备份或排除的数据库,用,隔开,当@type=3或时生效
declare @overdueDay int
set @overdueDay = 1 --设置过期天数,默认天;
declare @compression int
set @compression =0 --是否采用sql2008的压缩备份,0为否,1为采用压缩
-- ========================================================= 【删除过期数据库】
begin try
declare @d varchar(100)
set @d=convert(varchar,dateadd(day,-1,getdate()),120); -- [-30 是删除之前的天数]
EXECUTE master.dbo.xp_delete_file 0,N'D:\sql定时备份\',N'bak',@d; -- [修改(2)]
end try
begin catch
end catch
--declare @cmd varchar (1024)
--SET @Cmd=('master.dbo.xp_cmdshell '+'''xcopy \\Win-r85nangi77s\新建文件夹\CityCardAdmin_'+convert(varchar(10),getdate(),120)+'_'+DateName(hour,DATEADD(hour,-1,GETDATE())) +'.bak'+' D:\三联数据库 '+''+' /y/s'+'''')
--EXEC (@Cmd)
END
三、右击,新建作业
1、常规
名称:定时备份(每天12.30)
说明:每天12.30备份一次
2、步骤
步骤名称:定时运行备份脚
代码:
USE [数据库定时备份]
GO
DECLARE @return_value_1 int
EXEC @return_value_1 = [dbo].[定时备份_Huji]
SELECT 'Return Value' = @return_value_1
GO
DECLARE @return_value_2 int
EXEC @return_value_2 = [dbo].[定时备份_mvc]
SELECT 'Return Value' = @return_value_2
GO
3、计划
名称:每天12.30
相关文章
- 记1个低级错误:java.io.IOException: Server returned HTTP response code: 500 for URL: http://localhost:8769/accr/print
- sql server 使用SqlBulkCopy批量插入数据库
- SQL Server 2008R2 数据库出现“可疑”导致无法访问
- 关于SQL Server 数据库的备份
- SQL Server数据库高级进阶之锁实战演练
- SQL Server数据库高级进阶之事务实战演练
- SQL Server数据库附加失败错误:5123,拒绝访问
- SQL server 导入数据 (excel导入到SQL server数据库)
- SQL server 常用的数据库 DDL语言
- SQL SERVER 2005删除维护作业报错:The DELETE statement conflicted with the REFERENCE constraint "FK_subplan_job_id"
- SQL Server 2008数据库创建,备份,还原图解及注意点
- SQL Server 2008 R2——ROW_NUMBER() 去掉不同行中相同列的重复内容
- SQL Server 2005数据库安装
- nginx隐藏server信息和版本信息
- Sql Server连接数据库(Windows模式及不用密码及用户名模式)
- Sql Server 数据库还原(请勿模仿!)
- oracle与sql server大批量存储过程可以替换部分
- Sql Server连接数据库(Windows模式及不用密码及用户名模式)
- C# Oracle、Sql Server连接(增、删、改、查)
- 快速迁移数据中心:华为云数据库SQL Server实践案例技术解析
- SQL Server数据库 bcp导出备份文件应用
- SQL Server未找到或无法訪问server问题解决
- SQL Server 2005 实现数据库同步备份 过程--结果---分析
- SQL Server数据库附加失败:错误5120和错误950
- Kettle (PDI) 连接 MS SQL server数据库