Sybase常用备份方法有两种:dump/load 与 bcp
1、dump/load常用于完整备份,好处是全面完整,坏处是内容不可见且费时费力
2、bcp常用语增量备份,优点是备份内容灵活,缺点是不完整。
方法:
1、dump/load (必须要启动备份服务)
①在services.msc里面启动 sybase BCKServer_SERVERNAME_BS服务
②打开交互式SQL,或其他访问工具
③备份命令:dump database DBNAME to "PATH\BKNAME.dmp"
④恢复命令:load database DBNAME from "PATH\BKNAME.dmp"
上线数据库:online database DBNAME
⑤关闭 sybase BCKServer_SERVERNAME_BS服务
2、bcp(无需服务)
bcplistBuilder.bat
use %DB%
go
select 'bcp %DB%..‘+name + ' [out|in] %PATH%' + name + ' %ARGS%’ from sysobjects where type=' U'
go
cmd>
isql -Uuser -Ppassword -Sservername -i SCRIPT -o bcplist.bat
注:-i 后的参数SCRIPT为输入脚本,即上面的bcplistBuilder.bat
-o 后的参数 为生成脚本,即我们要运行的bcp备份脚本。
%DB%为数据库名,
%PATH%为要保存/恢复文件的路径,
%ARGS%为参数,一般为 -Uuser -Ppassword -Sservername
注2:此方法的bcplist.bat会生成大量的空格,注意删除。
表名过长会造成参数部分换行,需要手动修改
注3:[out|in]即为 [备份|恢复]
from ... 为获取表名条件,换句话说,即增量备份条件
注:加粗部分自行修改