继续测试:
先清除DEMO数据库的备份信息:
Use msdb
dbo.sp_delete_database_backuphistory demo
select b.physical_device_name, backup_set_id,first_lsn,last_lsn,checkpoint_lsn,database_backup_lsn,
backup_start_date,backup_finish_date,type,differential_base_lsn
from backupset a join backupmediafamily b on a.media_set_id=b.media_set_id
where database_name='demo'
(0 行受影响)
BACKUP DATABASE [demo]
TO DISK = N'C:\MyExe\demo.diff'
WITH DIFFERENTIAL , NOFORMAT, INIT,
NAME = N'demo-差异数据库备份', SKIP, NOREWIND, NOUNLOAD, STATS = 10
GO
已处理百分之11。
已处理百分之22。
已处理百分之33。
已处理百分之44。
已处理百分之55。
已处理百分之61。
已处理百分之72。
已处理百分之83。
已处理百分之94。
已为数据库'demo',文件'demo' (位于文件1 上)处理了144 页。
已处理百分之100。
已为数据库'demo',文件'demo_log' (位于文件1 上)处理了1 页。
BACKUP DATABASE WITH DIFFERENTIAL 成功处理了145 页,花费0.411 秒(2.739 MB/秒)。
select b.physical_device_name, backup_set_id,first_lsn,last_lsn,checkpoint_lsn,database_backup_lsn,
backup_start_date,backup_finish_date,type,differential_base_lsn
from backupset a join backupmediafamily b on a.media_set_id=b.media_set_id
where database_name='demo'
physical_device_name backup_set_id first_lsn last_lsn
C:\MyExe\demo.diff 5 296000000008400001 296000000008600001
checkpoint_lsn database_backup_lsn backup_start_date
296000000008400001 295000000016000037 2012-07-17 12:33:06.000
backup_finish_date type differential_base_lsn
2012-07-17 12:33:06.000 I 295000000016000037
恢复数据库:
RESTORE DATABASE [demotest]
FROM DISK = N'C:\MyExe\demo.diff'
WITH FILE = 1,
MOVE N'demo' TO N'C:\MyExe\demotest.mdf',
MOVE N'demo_log' TO N'C:\MyExe\demotest_1.ldf', NOUNLOAD, STATS = 10
GO
消息3118,级别16,状态1,第1 行
数据库"demotest" 不存在。RESTORE 只能在还原主文件的完整备份或文件备份时创建数据库。
消息3013,级别16,状态1,第1 行
RESTORE DATABASE 正在异常终止。
差异备份命令执行成功,但因缺少完整备份,数据库不能恢复。