--我现在的方式是首先完整备份一个数据库,然后每小时备份一次事务日志。
-- 但我想把完整备份和事务日志备份分离成独立的文件来存储
--1、创建数据库
create database db_test
go
-- 修改数据库为完整恢复模式
alter database db_test set recovery full
go--2、完整备份
BACKUP DATABASE db_test
    TO DISK = ‘c:\db_test.bak’
    WITH FORMAT;-- 3、每小时一次事物日志备份
backup log CardTong to disk =‘c:\db_test.bak’

解决方案 »

  1.   

    不太明白什么意思,为什么不可以分开呢?放一起这是非常不安全的方法,文件一坏你什么都没了
    backup database db_test to disk='c:\db_test.bak'
    backup log db_test to disk='c:\db_testlog.bak'
      

  2.   

    with format 参数 看情况加 谨慎
      

  3.   

    能给个具体的代码吗?因为处理为独立的文件后,LSN就不连续了。
      

  4.   

    大哥你在开玩笑吧 怎么可能日志不连续呢
    我做了个测试你自己看吧
    --1、创建数据库
    create database db_test
    go
    -- 修改数据库为完整恢复模式
    alter database db_test set recovery full
    go--2、完整备份
    BACKUP DATABASE db_test
      TO DISK = 'c:\db_test.bak'
      WITH FORMAT;GO--  测试日志
    USE db_test
    CREATE TABLE test1 (id INT)-- 3、每小时一次事物日志备份
    backup log db_test to disk ='c:\db_testlog.bak'--4 测试lsn
    RESTORE headeronly FROM DISK='c:\db_test.bak'RESTORE headeronly FROM DISK='c:\db_testlog.bak'
    /*
    其他信息略
    FirstLsn                    LastLsn 
    9000000002500001            9000000002700001 
    FirstLsn                    LastLsn 
    9000000002500001            9000000003400001
    */
      

  5.   

    billpu,你好,请问这种方式的备份如何还原?
      

  6.   

    恩 好人做到底 呵呵 恢复完备的时候用 with norecovery参数USE master RESTORE DATABASE db_test FROM DISK='c:\db_test.bak' WITH norecoveryRESTORE LOG db_test FROM DISK='c:\db_testlog.bak'USE db_testSELECT * FROM test1