Sqlserver2000 数据库备份实例代码

所属分类: 数据库 / MsSql 阅读数: 950
收藏 0 赞 0 分享
复制代码 代码如下:

数据库备份实例/**
**数据库备份实例
**朱二 2004年5月
**备份策略:
**数据库名:test
**备份文件的路径e:\backup
**每个星期天凌晨1点做一次完全备份,为保险起见,备份到两个同样的完全备份文件test_full_A.bak和test_full_B.bak
**每天1点(除了星期天)做一次差异备份,分别备份到两个文件test_df_A.bak和test_df_B.bak(采用附加到原备份的方式)
**每一个小时做一次事务日志备份,分别备份到两个文件test_log_A.bak和test_log_B.bak(采用附加到原备份的方式)
**/


--第一 完全备份部分
--新增作业
EXEC sp_add_job @job_name = '完全备份'
--新增作业步骤1,把数据库备份到test_full_backup_A.bak
EXEC sp_add_jobstep @job_name = '完全备份',
@step_name = 'Setp1',
@subsystem = 'TSQL',
@command = 'BACKUP DATABASE Test TO DISK=''e:\backup\test_full_A.bak'' WITH INIT',
@on_fail_action=3, --失败后转到下一步
@on_success_action=3,-- 成功后转到下一步
@retry_attempts = 5,
@retry_interval = 5

--新增作业步骤2,把数据库备份到test_full_B.bak
EXEC sp_add_jobstep @job_name = '完全备份',
@step_name = 'Setp2',
@subsystem = 'TSQL',
@command = 'BACKUP DATABASE Test TO DISK=''e:\backup\test_full_B.bak'' WITH INIT',
@retry_attempts = 5,
@retry_interval = 5

--调度
EXEC sp_add_jobschedule @job_name = '完全备份',
@name = 'Schedule_1',
@freq_type = 8, -- 按周
@freq_interval = 1, --每星期天执行
@freq_recurrence_factor=1,
@active_start_time = 10000 --开始时间: 凌晨1点
--第二 差异备份部分
--新增作业
EXEC sp_add_job @job_name = '差异备份'
--新增作业步骤1,把数据库备份到test_df_A.bak
EXEC sp_add_jobstep @job_name = '差异备份',
@step_name = 'Setp1',
@subsystem = 'TSQL',
@command = 'BACKUP DATABASE Test TO DISK=''e:\backup\test_df_A.bak'' WITH DIFFERENTIAL',
@on_fail_action=3, --失败后转到下一步
@on_success_action=3,-- 成功后转到下一步
@retry_attempts = 5,
@retry_interval = 5

--新增作业步骤2,把数据库备份到test_df_B.bak
EXEC sp_add_jobstep @job_name = '差异备份',
@step_name = 'Setp2',
@subsystem = 'TSQL',
@command = 'BACKUP DATABASE Test TO DISK=''e:\backup\test_df_B.bak'' WITH DIFFERENTIAL',
@retry_attempts = 5,
@retry_interval = 5

--调度
EXEC sp_add_jobschedule @job_name = '差异备份',
@name = 'Schedule_1',
@freq_type = 8, -- 按周
@freq_interval = 126, --星期一至星期六
@freq_recurrence_factor=1,
@active_start_time = 10000 --开始时间: 凌晨1点


--第二 事务备份部分
--新增作业
EXEC sp_add_job @job_name = '事务备份'
--新增作业步骤1,把数据库备份到test_log_A.bak
EXEC sp_add_jobstep @job_name = '事务备份',
@step_name = 'Setp1',
@subsystem = 'TSQL',
@command = 'BACKUP LOG Test TO DISK=''e:\backup\test_log_A.bak''',
@on_fail_action=3, --失败后转到下一步
@on_success_action=3,-- 成功后转到下一步
@retry_attempts = 5,
@retry_interval = 5

--新增作业步骤2,把数据库备份到test_log_B.bak
EXEC sp_add_jobstep @job_name = '事务备份',
@step_name = 'Setp2',
@subsystem = 'TSQL',
@command = 'BACKUP LOG Test TO DISK=''e:\backup\test_log_B.bak''',
@retry_attempts = 5,
@retry_interval = 5

--调度
EXEC sp_add_jobschedule @job_name = '事务备份',
@name = 'Schedule_1',
@freq_type = 4, -- 按天
@freq_interval=1,--每一天
@freq_subday_type=8, --按小时
@freq_subday_interval=1 --每一个小时
更多精彩内容其他人还在看

SQL Server正确删除Windows认证用户的方法

这篇文章主要给大家介绍了关于SQL Server正确删除Windows认证用户的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用SQL Server具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
收藏 0 赞 0 分享

SQL Server查看login所授予的具体权限问题

在SQL Server数据库中如何查看一个登录名(login)的具体权限呢,下面脚本之家小编给大家带来了SQL Server查看login所授予的具体权限问题,感兴趣的朋友一起看看吧
收藏 0 赞 0 分享

Mysql8.0.17安装教程【推荐】

本文通过图文并茂的形式给大家介绍了Mysql8.0.17安装,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

C# ling to sql 取多条记录最大时间

这篇文章主要介绍了C# ling to sql 取多条记录最大时间,文中通过实例代码给大家介绍了sql 查询相同记录下日期最大的 一条,代码简单易懂,需要的朋友可以参考下
收藏 0 赞 0 分享

sql server编写archive通用模板脚本实现自动分批删除数据

这篇文章主要介绍了sql server编写archive通用模板脚本实现自动分批删除数据,需要的朋友可以参考下
收藏 0 赞 0 分享

SQL Server怎么找出一个表包含的页信息(Page)

这篇文章主要给大家介绍了关于SQL Server是如何找出一个表包含的页信息(Page)的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用SQL Server具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
收藏 0 赞 0 分享

SQLyog连接MySQL8.0报2058错误的完美解决方法

这篇文章主要介绍了SQLyog连接MySQL8.0报2058错误的完美解决方法,本文图文并茂给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

SQL SERVER日志进行收缩的图文教程

这篇文章主要给大家介绍了关于SQL SERVER日志进行收缩的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者使用SQL SERVER具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
收藏 0 赞 0 分享

SqlServer中批量update语句

我现在想把S_USER表中的ACCOUNT批量修改成S_PERSON的ACCOUNT,那么就可以参考下面的语句,要找到对应的字段
收藏 0 赞 0 分享

SqlServer AS的用法

本篇文章简要分析,在SQL SERVER中,AS的基本用法,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多