如何用delphi实现服务器间的数据备份以及恢复?
具体情况是:
    我们做了一个学生学籍管理和成绩查询系统,老师要求能用程序实现将服务器1上的数据库中的数据自动备份到服务器2上的数据库中。数据库用的是MS-SQLServer2000.

解决方案 »

  1.   

    1 用sqlserver的发布和订阅机制
    2 调用DTS和bcp
    3 用存储过程或者select
    4 用backup/restore语句
    5 用文件拷贝和sp_attatch_db
    6 用TBatchMove
    ......
      

  2.   

    with query do 
    begin
      close;
      sql.clear;
      sql.add('backup database 数据库 to disk='''+ filename(c:\1111) +'''');
      execsql;
    end;
    with query do 
    begin
      close;
      sql.clear;
      sql.add('RESTORE DATABASE 数据库 FROM disk='''+filename+''' WITH REPLACE');
      execsql;
    end;
      

  3.   

    fhuibo(Sailor) 的方法是用backup和restore,完全是可行的,不过有一点必须注意,也是我的一点体会,query的database必须设成不是要恢复的数据库(比如可以使用master库),因为要恢复的数据库必须是当前不在使用当中的(not in use),如果有其他的应用程序正在使用要恢复的库,恢复也不会成功。
      

  4.   

    同意:  kirbygao(小刀) 的看法就是他所说的那样我也做过的
      

  5.   

    刚刚实验了kirbygao(小刀) 的办法,ok!