数据库-备份Sybase DataBase

Autobackup sybase DataBase(操作系统at指令+批处理文件+SQL文件+存储过程)
Author:chinanetboy QQ:44633197
Blog: http://blog.csdn.net/chinayaosir
此方式可以自动备份mssql,mysql,Sybase,oracle…sql文件和存储过程有点差别而己!

 

******************************************************************************
1.windows操作系统at指令
C:/>at /?
AT 指令排定某些指令或程序在某个特定的日期和时间,在计算机上执行
执行 AT 指令之前必须先启动 Schedule 服务。
AT [//computername] time [/INTERACTIVE]    [ /EVERY:date[,...] | /NEXT:date[,...]] "command"
//computername     指定远程计算机。如果省略这个参数,指令会被排定在本机上执行
id                 指定给排定时程指令的识别码。
/delete            删除某个已排程的指令。如果省略 id,所有计算机指令都会被删除。
/yes               用于删除所有已排程的工作,且不想在执行删除使用。
time               指定指令执行的时间。
/interactive       允许工作在执行时,与当时登入的用户互动。
/every:date[,...]  指定在每周或每月的某日 (或某几日) 执行指令,如果省略日期,则预设为在每月的本日执行。
/next:date[,...]   指定在下一次的指定日期 (如,下周三) 时,执行,如果省略日期,则预设为在每月的本日执行。
"command"          准备执行的 Windows NT 指令或批处理。

在执行此程序要确保windows的服务schedule是start,
在cmd下面添加运行计划的代码
at 2:00 /every:M,T,W,Th,F,S,Su cmd /c g:/Auto backup/script/autobackup.bat
表示在从星期一到六每天早上2:00开始运行autobackup.bat批处理程序
取消运行计划指令如下
at /delete /yes
******************************************************************************
2.批处理文件autobackup.bat内容如下
Isql格式:isql –Uusename –Ppassword –Sdatabase  < sql脚本文件
代码如下:
isql -Usa –Pbab1254 -SBABDB2 < g:/Auto backup/script/autobackup.spt
******************************************************************************
3. 数据库脚本文件autobackup.spt
use BABDB2
go
exec autobackup
go
/*
use BABDB2  =打开数据库
exec autobackup=运行存储过程autobackup
*/
******************************************************************************

4.存储过程代码autobackup
CREATE PROCEDURE dbo.autobackup
AS
DECLARE @filename char(255)
DECLARE @tempchar1 char(255)
DECLARE @tempchar2 char(1)
DECLARE @tempchar3 char(14)
BEGIN
SELECT @tempchar1=value
    FROM emg_systemtable
    WHERE parameter="backup_path"
    
SELECT @tempchar2=value
    FROM emg_systemtable
    WHERE parameter="district"
    
SELECT @tempchar3=
    datename(year,getdate())+"_"
    +ltrim(str(datepart(month,getdate()),2,0))+"_"
    +ltrim(str(datepart(day,getdate()),2,0))+".dat"
    
SELECT @filename=rtrim(@tempchar1)+rtrim(@tempchar2)+@tempchar3
DUMP DATABASE BABDB2 TO @filename
END
******************************************************************************
5.这样设置后,winnt4.0/2000/2003服务器就会每天半夜2:00自动备份数据库sybase
到指定的目录中,按规则生成备份数据库文件

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值