大家好,我对数据库test进行了完整备份之后删除了table1表的一条记录,然后再进行事务日志备份,可还原的时候提示说该LSN 太晚,无法应用到数据库,请问大家应该如何安排这个备份呢?操作代码和异常代码如下:backup db test to disk='d:\test_data.bak'
delete from table1 where a=3
select dt=getdate() into #
backup log test to disk='d:\test_log.bak'
restore database test from disk='d:\test_data.bak' with replace,NORECOVERY
DECLARE @dt datetime
select @dt=dateadd(ms,-40,dt) from #
restore log test from disk='d:\test_log.bak' with recovery,stopat=@dt消息 4305,级别 16,状态 1,第 3 行
此备份集中的日志开始于 LSN 18000000022900001,该 LSN 太晚,无法应用到数据库。可以还原包含 LSN 18000000022300001 的较早的日志备份。
消息 3013,级别 16,状态 1,第 3 行
RESTORE LOG 正在异常终止。顺便问一下,我第一次做完整备份,接下来做事务日志备份,第一次事务日志备份可否选择截断事务日志?

解决方案 »

  1.   

    从LZ所提供备份->恢复的语句看,应无此问题的,真实情况应该不止这些语句吧?我第一次做完整备份,接下来做事务日志备份,第一次事务日志备份可否选择截断事务日志?
    --> 备份日志即自动截断事务日志的.
      

  2.   


    backup database test to disk='d:\test_data.bak'
    delete from test.dbo.a where id=10select dt=getdate() into #
    backup log test to disk='d:\test_log2.bak'
    restore database test1 from disk='d:\test_data.bak' with replace,NORECOVERY,
      MOVE 'test' TO 
    'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Data\NewAdvWorks.mdf', 
          MOVE 'test_log' 
    TO 'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Data\NewAdvWorks.ldf'DECLARE @dt datetime
    select @dt=dateadd(ms,-40,dt) from #
    restore log test1 from disk='d:\test_log2.bak' with recovery,stopat=@dt
    我的这个测试没有问题。
    select * from backupset--如果有log写入那么这一档的last_lsn 应该为下一档的first_lsn,自己看一下中间还有没有其他备份,
    或lsn是否连续。还是两档log备在了同一个文件下(需要join一下备份媒体表)。
    /*
    first_lsn last_lsn checkpoint_lsn database_backup_lsn database_creation_date backup_start_date backup_finish_date type
    3000000000070200037 3000000000072100001 3000000000070200037 0 2013-01-15 14:55:06.000 2013-06-09 15:43:32.000 2013-06-09 15:43:33.000 D
    3000000000070200037 3000000000073100001 3000000000070200037 3000000000070200037 2013-01-15 14:55:06.000 2013-06-09 15:43:34.000 2013-06-09 15:43:34.000 L
    3000000000073400047 3000000000075300001 3000000000073400047 3000000000070200037 2013-01-15 14:55:06.000 2013-06-09 15:44:41.000 2013-06-09 15:44:42.000 D
    3000000000076500047 3000000000078400001 3000000000076500047 3000000000073400047 2013-01-15 14:55:06.000 2013-06-09 15:45:07.000 2013-06-09 15:45:08.000 D
    3000000000073100001 3000000000079100001 3000000000076500047 3000000000076500047 2013-01-15 14:55:06.000 2013-06-09 15:45:08.000 2013-06-09 15:45:08.000 L
    3000000000079900043 3000000000081700001 3000000000079900043 3000000000076500047 2013-01-15 14:55:06.000 2013-06-09 15:46:50.000 2013-06-09 15:46:51.000 D
    3000000000078400001 3000000000082400001 3000000000079900043 3000000000079900043 2013-01-15 14:55:06.000 2013-06-09 15:46:51.000 2013-06-09 15:46:51.000 L
    3000000000082600037 3000000000084200001 3000000000082600037 3000000000079900043 2013-01-15 14:55:06.000 2013-06-09 15:49:59.000 2013-06-09 15:50:00.000 D
    3000000000082400001 3000000000084900001 3000000000082600037 3000000000082600037 2013-01-15 14:55:06.000 2013-06-09 15:50:00.000 2013-06-09 15:50:00.000 L
    3000000000085100037 3000000000086700001 3000000000085100037 3000000000082600037 2013-01-15 14:55:06.000 2013-06-09 15:51:06.000 2013-06-09 15:51:07.000 D
    3000000000084900001 3000000000087400001 3000000000085100037 3000000000085100037 2013-01-15 14:55:06.000 2013-06-09 15:51:07.000 2013-06-09 15:51:07.000 L
    3000000000087400001 3000000000087600001 3000000000085100037 3000000000085100037 2013-01-15 14:55:06.000 2013-06-09 15:52:22.000 2013-06-09 15:52:22.000 L
    3000000000087900047 3000000000089800001 3000000000087900047 3000000000085100037 2013-01-15 14:55:06.000 2013-06-09 15:53:27.000 2013-06-09 15:53:28.000 D
    3000000000087600001 3000000000090700001 3000000000087900047 3000000000087900047 2013-01-15 14:55:06.000 2013-06-09 15:53:28.000 2013-06-09 15:53:28.000 L
    */