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 ... 为获取表名条件,换句话说,即增量备份条件



注:加粗部分自行修改