sybase自动备份方法

来源:互联网 发布:日本人审美观知乎 编辑:程序博客网 时间:2024/06/11 09:49

在数据库服务器上操作步骤:
1.创建文件夹f:/dbbak
2.在f:/dbbak中新建两个文本文件dump.sql,dump.bat
3.将dump.bat设为计划任务,每天3:00执行

---------------------------dump.sql内容如下:
use master
go
dump database report to 'f:/dbbak/report.dat'
/*可以类似添加多个备份语句*/
go
---------------------------dump.bat内容如下:

@echo off
FOR /F "tokens=1-3  delims=- " %%i IN ('date /t') DO SET DATE=%%i-%%j-%%k
isql -Udumper -Sdbsvr -if:/dbbak/dump.sql -Dmaster -Ppassword
if not exist %DATE%/nul MD %DATE%
move *.dat %DATE%

若要增加自动删除陈旧文件的功能,可以这样:

1.创建文本文件f:/dbbak/mydel.vbs内容如下:
    Dim fs, f, f1, fc, s
    Set fs = CreateObject("Scripting.FileSystemObject")
    Set f = fs.GetFolder("f:/dbbak")
    Set fc = f.SubFolders
    For Each f1 in fc
     If  DateDiff("d",f1.DateLastModified ,Date())>10 Then
      fs.DeleteFolder "f:/dbbak/"&f1.name
  End If      
    Next

2.在dump.bat文件的最后增加一行:
   cscript f:/dbbak/mydel.vbs

如上修改后,f:/dbbak/下只保存最近11天自动备份的文件,若需保存更多,修改
DateDiff("d",f1.DateLastModified ,Date())>10 中的10改大一点即可

原创粉丝点击