方案二、用VSS的Archive功能配合bat文件来实现。
好处:可以细化到每个尽可能小的子项目,备份具有灵活性。
1、首先编写一个批处理文件apple。bat
appl.bat的内容大致如下:
;@-----------
SET SSDIR=D:\programfile\visualstudio\VSS
FOR /F "tokens=1-4 delims=/ " %%i IN ('date /t') DO SET DATE=%%i-%%j-%%k
D:\programfile\visualstudio\VSS\win32\ssarc -d- -yAdmin,apple d:\tmp\%DATE%backup1.ssa $/呼叫中心系统
FOR /F "tokens=1-4 delims=/ " %%i IN ('date /t') DO SET DATE=%%i-%%j-%%k
D:\programfile\visualstudio\VSS\win32\ssarc -d- -yAdmin,apple d:\tmp\%DATE%backup2.ssa $/计费系统
;@-----------
对于方法二,进行了一下试验.但是没有得到执行结果,因为在指定的目录下没有生成相应的文件.因为对bat脚本不了解

,所以也只能针对上述脚本进行修改.修改后的脚本如下:
SET SSDIR=E:\工具软件\VSS\Install
FOR /F "tokens=1-4 delims=/ " %%i IN ('date /t') DO SET DATE=%%i-%%j-%%k
E:\工具软件\VSS\Install\win32\ssarc -d- -yAdmin,000 F:\VSS_One\%DATE%backup1.ssa$/CMMI
FOR /F "tokens=1-4 delims=/ " %%i IN ('date /t') DO SET DATE=%%i-%%j-%%k
E:\工具软件\VSS\Install\win32\ssarc -d- -yAdmin,000 F:\VSS_Two\%DATE%backup2.ssa$/Account
个人理解:
SET SSDIR=E:\工具软件\VSS\Install /VSS的安装路径
E:\工具软件\VSS\Install\win32\ssarc -d- -yAdmin,000 F:\VSS_One\%DATE%backup1.ssa$/CMMI
其中,E:\工具软件\VSS\Install\win32\ssarc 表示ssarc.exe 所在的路径;Admin,000 表示管理端管理员的用户名和密码;
F:\VSS_One\%DATE%backup1.ssa 表示项目数据将要被备份到的文件所在的路径和文件名;$/CMMI 对此写法有一个疑问,因为CMMI在这里是一个项目的名称,假如在一台服务器上不只一个VSS数据库,那么怎么确定是哪个数据库中的哪个项目呢?
上述经我修改后的脚本不知道有哪里理解不正确,希望经常使用批处理脚本的朋友帮忙看一下?
另外,在
http://bbs.scmlife.com/thread-496-1-1.html也有讨论此问题,好象也没有得到最终的结果.