use iSignatureKey --数据名称
if exists (select * from dbo.sysobjects where id=object_id(N'[dbo].mysp_All_iSignatureKey') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
drop procedure [dbo].mysp_All_iSignatureKey
go
CREATE PROCEDURE mysp_All_iSignatureKey
@bakpath varchar(4000) --备份路径
AS
BACKUP DATABASE iSignatureKey TO DISK = @bakpath
GO
if exists (select * from dbo.sysobjects where id=object_id(N'[dbo].[p_createjob]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
drop procedure [dbo].[p_createjob]
go
create proc p_createjob
@jobname varchar(100),--作业名称
@sql varchar(8000), --要执行的命令
@serverName sysname='',--job server名
@dbname sysname='', --默认为当前的数据库名
@freqtype varchar(6)='day', --时间周期,month 月,week 周,day 日
@fsinterval int=1, --相对于每日的重复次数
@time int=170000 --开始执行时间,对于重复执行的作业,将从0点到23:59分
as
if isnull(@dbname, '')='' set @dbname=db_name()
--创建作业
if exists(select 1 from msdb..sysjobs where name=@jobname)
exec msdb..sp_delete_job @job_name=@jobname
exec msdb..sp_add_job @job_name=@jobname
--创建作业步骤
exec msdb..sp_add_jobstep @job_name=@jobname,
@step_name='BakdataStart',
@subsystem='TSQL',
@database_name=@dbname,
@command=@sql,
@retry_attempts=5,--重试次数
@retry_interval=5--重试间隔
--创建调度
declare @ftype int, @fstype int, @ffactor int
select @ftype=case @freqtype when 'day' then 4
when 'week' then 8
when 'month' then 16 end
,@fstype=case @fsinterval when 1 then 0 else 8 end
if @fsinterval<>1 set @time=0
set @ffactor=case @freqtype when 'day' then 0 else 1 end
exec msdb..sp_add_jobschedule @job_name=@jobname,
@name = '时间安排',
@freq_type=@ftype,---每天,8 每周,16 每月
@freq_interval=1,--重复执行次数
@freq_subday_interval=@fsinterval,--重复周期
@freq_recurrence_factor=@ffactor,
@active_start_time=@time--下午17:00:00分执行
if @servername=''
set @servername=@@servername
EXEC msdb..sp_add_jobserver @job_name=@jobname,
@server_name=@servername
go
exec p_createjob @jobname='iSignatureKey.bak',
@sql='exec mysp_All_iSignatureKey @bakpath="d:\iSignatureKey.bak"', --bakpath备份路径
@dbname='iSignatureKey',
@freqtype='day',
@time='235959' --你起备份的时间HHMMSS(HH:24制小时,MM:分钟,SS:秒)
分享到:
相关推荐
实现定时自动备份的方法通常是通过SQL Server代理服务和作业来完成。以下是一步一步的详细操作步骤: 1. **创建备份设备**:在SQL Server Management Studio (SSMS) 中,打开“管理”菜单,选择“备份设备”,然后...
SQL Server 代理是 SQL Server 的一部分,负责执行预定义的作业,例如备份数据库、维护索引、统计信息等。代理可以在后台运行,以便管理员可以专注于其他任务。 设置 SQL Server 代理 要设置 SQL Server 代理,...
"sqlserver多数据库自启动定时备份工具批量执行脚本"是一种高效的方法,它允许管理员自动化备份多个数据库,特别是在系统启动时自动运行,以确保数据始终得到保护。这个解决方案尤其适用于那些包含大量关键数据和对...
本篇将重点介绍"SQLserver数据库自动定时备份"这一重要知识点。 SQL Server 自动定时备份允许用户设置特定的时间点来自动执行数据库备份,这在防止数据丢失或系统故障时恢复数据方面起到了关键作用。通过设定备份...
在描述中提到的“sqlserver 程序化备份”,意味着我们需要在Delphi应用程序中编写代码来执行SQL Server的备份任务。这可以通过以下步骤实现: 1. 连接数据库:使用ADOConnection组件,配置适当的连接字符串(如...
本工具是自己开发的,用于SQL Server 数据库的备份与还原用,有了本工具,设定好每一个数据库的备份时间,可以按年、月、日、时、分设置好后,到时间自动备份,工具还有备份数据为多少天前的可以自动删除,同时也有...
在SQL Server 2008中,实现数据库定时自动备份主要依赖于两种方法:使用SQL Server Agent作业和利用维护计划。下面将详细阐述这两种方法。 ##### 使用SQL Server Agent作业进行数据库备份 这种方法涉及到创建一个...
例如,定期进行完整备份,然后在两次完整备份之间进行差异备份,同时根据业务需求定时备份事务日志。 在压缩包中提供的"使用组件式数据库备份恢复"可能包含更详细的步骤和示例代码,例如如何使用组件化的方式设计...
在SQL Server环境中,确保数据的安全性和可恢复性是至关重要的,定期备份数据库是实现这一目标的关键环节。"SQL Server计划自动备份(TSQL_备份共享文件版)"这个主题涉及如何利用TSQL脚本和SQL Server代理服务设置...
根据提供的文件信息,我们可以深入探讨SQL Server完整备份数据库的相关知识点,包括备份脚本的理解与应用、不同版本间的差异以及执行过程中的注意事项。 ### SQL Server 完整备份数据库脚本解析 #### 一、脚本概览...
本文详细介绍了如何在 SQL Server 2008 中实现数据库的定时自动备份,包括创建存储过程、创建代理作业、检查备份日志及结果以及故障恢复等多个方面。通过这些步骤,可以有效地保护数据库数据的安全性,减少因意外...
下面将详细介绍如何利用SQL Server的T-SQL命令以及批处理(bat)文件来创建一个定时备份策略。 首先,`sqlserverbackup.sql` 文件通常包含用于生成数据库备份的T-SQL语句。这些语句可能包括以下内容: 1. `BACKUP ...
- 在“选择维护任务”中,选择“备份数据库完整”、“清除维护任务”和“执行 SQL Server 代理作业”。 6. **备份设置**: - 选择要备份的数据库,并指定备份的位置和文件扩展名(通常为 .bak)。 - 在“选项”...
8. 可以设置自动启动 sql server Agent:运行 Services.msc,设置 sqlserverAgent 为自动启动。 修改计划:打开企业管理器,在控制台根目录中依次点开 Microsoft SQL Server-->SQL Server 组-->双击打开你的服务器--...
SQL Server自动备份与恢复系统是数据库管理中至关重要的环节,特别是在大型企业或高并发应用环境中,数据的安全性和可恢复性是保障业务连续性的重要因素。本文将深入探讨如何利用Delphi编程语言构建一个SQL Server...
2. **启动SQL Server代理**:SQL Server代理是用于调度和执行SQL Server中的作业(jobs)的服务,这些作业可以包括备份数据库等任务。 3. **创建新作业**:在对象资源管理器中,展开“SQL Server代理”->“作业”,...
### SQL Server中制作数据库自动定时备份 #### 一、引言 在数据库管理中,定期进行数据备份是一项至关重要的任务,它能够确保在系统故障或数据丢失等意外情况发生时,能够快速恢复到正常状态。SQL Server 提供了...
在SQL Server中,备份数据库通常通过T-SQL语句`BACKUP DATABASE`执行。在Java中,可以通过`Statement`或`PreparedStatement`对象执行这个命令。例如: ```java String sql = "BACKUP DATABASE [YourDatabaseName]...
SQL Server 提供了一种叫做维护计划的工具,可以设置定时执行备份任务。但在这个场景中,我们使用的是自定义的vbs(Visual Basic Script)脚本来实现自动化。这种自定义的方法更灵活,可以根据具体需求定制备份策略...
在SQL Server 2005中,定期备份数据库是非常关键的操作,它确保数据的安全性和可恢复性。自动定时备份能够避免手动操作的疏忽和不便,尤其对于大型系统,这是一项必要的设置。以下是对如何自动定时备份SQL Server ...