我恢复数据库时,老是有些老的和新的历史记录来混淆,搞到屡次恢复不成功。
请问有不有什么方法先清除备份历史记录,然后我想恢复什么时候的就恢复什么时候的?

解决方案 »

  1.   

    use msdb declare @db varchar(100)set @db = '数据库名'--查看SQL Server企业管理器的备份数据库历史记录
    select  f.device_type, f.physical_device_name, f.logical_device_name, b.database_name 
    from backupmediafamily f, backupset b  
    where b.database_name = @db and b.backup_finish_date in (select backup_finish_date from backupmediafamily INNER JOIN backupset ON backupmediafamily.media_set_id=backupset.media_set_id where backupset.database_name = @db and (backupmediafamily.device_type=2 or backupmediafamily.device_type=102)) and b.media_set_id = f.media_set_id--删除SQL Server企业管理器的备份数据库历史记录
    delete backupmediafamily
    from backupmediafamily f, backupset b  
    where b.database_name = @db and b.backup_finish_date in (select backup_finish_date from backupmediafamily INNER JOIN backupset ON backupmediafamily.media_set_id=backupset.media_set_id where backupset.database_name = @db and (backupmediafamily.device_type=2 or backupmediafamily.device_type=102)) and b.media_set_id = f.media_set_id