Sql数据库增量备份还原

1、首先还原一个全备

RESTORE DATABASE SWJSWMES FROM DISK= 'D:\XXX.BAK' 
WITH  MOVE N'XXX' TO N'D:\Backup\XXX.ndf',  
      MOVE N'XXX_log' TO N'D:\Backup\XXX_log.ldf', 
NORECOVERY

2、根据增量备份文件日期,接着循环恢复数据库

复制代码
DECLARE @i int = 0
DECLARE @path NVARCHAR(MAX)
WHILE (@i <= 6)--有几个文件就恢复几个文件
BEGIN

    SELECT @path = 'D:\XXX'+RIGHT('00'+CONVERT(varchar(10),@i),2)+'.BAK'
    --PRINT @path
    RESTORE DATABASE XXX FROM DISK = @path  WITH NORECOVERY

    SET @i = @i + 1
END
复制代码

3、还原到想还原时间点前一个备份文件,然后在设置时间点恢复数据

RESTORE LOG SWJSWMES
    FROM  DISK =N'D:\XXX.BAK'--这个是要恢复的文件,包含想要恢复时间点的数据
    WITH  FILE = 1,  
    STANDBY = N'D:\XXX.BAK',  --这个地址随便设置
    STOPAT = N' 2022-10-25 09:00:00.000'

GO

 数据库压缩备份:

 backup database to disk='D:/1.bak' with stats = 1,compression

posted @   未风  阅读(520)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
历史上的今天:
2018-10-26 SQL语句查询数据库所有表和所有字段的详细信息(包括表描述和字段描述)
2017-10-26 外部数据库驱动程序XX中的意外错误
点击右上角即可分享
微信分享提示