关于SQLServer定时备份的问题

xishuang 2003-09-16 03:58:38
我现在要在Web页面实现数据库的定时备份功能,即让用户输入时间,然后在这个指定的时间备份数据库,这个SQL脚本怎么写,有什么好的办法?谢谢各位帮忙,比较着急,在线等待!
...全文
44 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
pengdali 2003-09-16
  • 打赏
  • 举报
回复
你手工的时候不是在备份对话筐里的下面有个“调度”吗?勾上它在后面选执行时间就可以了。


或:

企业管理器--管理--右键数据库维护计划--新建维护计划--下一步--选择你要备份的数据库--下一步直到"指定数据库备份计划"这项--指定存储备份文件的位置,这里根据需要选择备分到磁带还是磁盘--单击调度后面的"更改"按纽--定义你的数据备份计划的时间安排,完成后确定--下一步--这里可以设置备份文件的保留时间和备文件的扩展名--下一步--选择是否做日志备份计划--下一步直到完成.
pengdali 2003-09-16
  • 打赏
  • 举报
回复
你手工的时候不是在备份对话筐里的下面有个“调度”吗?勾上它在后面选执行时间就可以了。


或:

企业管理器--管理--右键数据库维护计划--新建维护计划--下一步--选择你要备份的数据库--下一步直到"指定数据库备份计划"这项--指定存储备份文件的位置,这里根据需要选择备分到磁带还是磁盘--单击调度后面的"更改"按纽--定义你的数据备份计划的时间安排,完成后确定--下一步--这里可以设置备份文件的保留时间和备文件的扩展名--下一步--选择是否做日志备份计划--下一步直到完成.
accounant 2003-09-16
  • 打赏
  • 举报
回复
企业管理器里设就可以了!
右击数据库->所有任务->备份数据库,然后在里设置就可以了!
happydreamer 2003-09-16
  • 打赏
  • 举报
回复
EXEC sp_add_job @job_name = 'test'


EXEC sp_add_jobstep @job_name = 'test',
@step_name = 'test_1',
@subsystem = 'TSQL',
@command = 'backup database xxx to ..', /*这是你每次想的备份语句*/
@retry_attempts = 5,
@retry_interval = 5
EXEC sp_add_jobschedule @job_name = 'test',
@name = 'Schedule_test',
@freq_type = 16, -- daily
@freq_interval = 26,
@active_start_time = 10000


--根据用户要求改下面的调度时间
sp_add_jobschedule
@job_id = @JobID,
@name = N'ff',
@enabled = 1,
@freq_type = 4, --每天
@active_start_date = 20021212, --开始日期
@active_start_time = 0, --开始时刻
@freq_interval = 1, --子周期
@freq_subday_type = 8, --单位是小时
@freq_subday_interval = 10, --10小时
@freq_relative_interval = 0,
@freq_recurrence_factor = 0,
@active_end_date = 99991231,
@active_end_time = 235959
yujohny 2003-09-16
  • 打赏
  • 举报
回复
--写一存储过程来备份,建一job来执行该存储过程。
1:
use A
go
create proc Test
As
BACKUP .....

go

2:
EXEC sp_add_job @job_name = '作业名字'


EXEC sp_add_jobstep @job_name = '作业名字',
@step_name = '步骤名子',
@subsystem = 'TSQL',
@command = 'EXEC 库名..过程名',
@retry_attempts = 5, --重试次数
@retry_interval = 5 --重试间隔

EXEC sp_add_jobschedule @job_name = '作业名字',
@name = '作业调度名字',
@freq_type = 4, -- 每天
@freq_interval = 26, --间隔
@active_start_time = 10000 --开始时间
enhydraboy 2003-09-16
  • 打赏
  • 举报
回复
简单地方法:
1 用企业管理器手工建一个备份计划,设置好间隔时间。
2 然后,你可以在sql agent的计划中,看到这个自动备份任务,鼠标右键->生成角本。
3 把脚本中的sql语句中就是你要的sql脚本。



good luck.
amtyuranus 2003-09-16
  • 打赏
  • 举报
回复
不写脚本就可以了,你知道在你的web程序中,读取这个时间,你过段时间触发这个事情,当当前时间等于这个时间后,就可以进行备份。

代码你可以用sql 脚本,也可以用api 函数
amtyuranus 2003-09-16
  • 打赏
  • 举报
回复
不写脚本就可以了,你知道在你的web程序中,读取这个时间,你过段时间触发这个事情,当当前时间等于这个时间后,就可以进行备份。

代码你可以用sql 脚本,也可以用api 函数

34,875

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧