auto backup in sql2005

SCB 备份方案

由于银行安全性,SQL server Agent禁止使用,并且SQL server自身的账号被收回,所以以下解决方案是基于[控制面板][任务计划]

[思路]

1 [控制面板][任务计划]新建立一个任务计划,调用某个bat文件;

2 首先创建1bat文件(该文件调用某个*.sql文件);

3 在该sql文件里面执行调用某个存储过程;

4 存储过程里执行数据库全备份。

[开发步骤]

1 在数据库(本地测试数据库名字AdventureWorksDW)里面创建存储过程sp_backup,

代码执行数据库全备份;

2 d:盘根目录下创建b.sql文件,写入sql语句(使用AdventureWorksDW,执行存储过程);

3 之后创建bat文件(文件名字a.bat),写入sql2005 Dos命令,调用该b.sql文件;

4 之后在[控制面板][任务计划] 新建立一个任务计划,注意应该使用windows账号,里面调用a.bat文件。

[测试]

测试人:开发者。

测试次数:3次以上。

测试时间:本周三 周四。

测试数据库:AdventureWorksDW

测试成果检验:开发机器(笔记本,备份文件可现场检验),每执行一次任务计划都生成一个备份文件,并且是可以恢复的(如果失败,请先删除数据库,之后再恢复)。

附后:

已经建立恢复脚本,由于备份文件带日期,带有不确定性,所以只能提供脚本,使用时候替换备份文件名字就可以拉。

                          Satyam(上海)软件公司

                          BIDW组:Bruce_li 

                              2008-5-15

用户操作文档

1 复制a.bat    b.sql 到d:\

 

2 创建存储过程,将store procedure.txt里面的代码放到查询分析器里执行;

3 [控制面板][任务计划]配置如下图:

4点执行就可以备份拉。

5 可以执行以下代码在线恢复数据库

use master;

restore database AdventureWorksDW FROm disk='c:AdventureWorksDW';

1a.bat

sqlcmd -i d:b.sql

2b.sql

use AdventureWorksDW;
exec sp_backupdb;

3.create sp

create procedure [dbo].[sp_backupdb]

as
declare @path varchar(100) --路径
declare @dbName varchar(100) --数据库名字
declare @dt nvarchar(20)
declare @s nvarchar(1000)
-- set @path="d:";
set @dbName='AdventureWorksDW'
set @dt=convert(varchar(10),getdate(),120) + right(convert(varchar(20),getdate(),120),8)
set @dt = replace(@dt,'-','')
set @dt = replace(@dt,':','')

set @s = 'backup database [' + @dbName + '] to disk = N''' + 'c:' + @dbName + '_' + @dt + '_BK'' with init , nounload , name = N''' + @dbName + 'bbb'', noskip , stats = 10, noformat'
print @s
exec sp_executesql @s
4

--backu1
use AdventureWorksDW;
backup database AdventureWorksDW to disk='c:AdventureWorksDW'
--backu12 a
use AdventureWorksDW;
backup database AdventureWorksDW to disk='c:AdventureWorksDW1'

--failure
--use AdventureWorksDW;
--backup database AdventureWorksDW to disk='c:AdventureWorksDW' with differential

--1 restore
use master;
restore database AdventureWorksDW FROm disk='c:AdventureWorksDW';
--2 restore a
use master;
restore database AdventureWorksDW FROm disk='c:AdventureWorksDW1';

[@more@]

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/91551/viewspace-1004100/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/91551/viewspace-1004100/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值