SQL Server 2016 bak文件还原

一、概念

完整备份:备份整个数据库
差异备份:基于上一个完整备份
事务日志备份:基于前一个完备+日志备份(确保还原数据库到某个时间点)

二、还原步骤

前提:准备好备份文件
在这里插入图片描述

1. 完整备份还原
  • 方法一:选择【数据库】–>【还原数据库】
  • 方法二:选择【要还原的数据库】—>【任务】—>【还原】—>【数据库】
    在这里插入图片描述
    1)在还原数据库常规选项中,选择设备,添加你的备份文件,若需要将数据库备份还原为新的数据库,将目标数据库修改为你的新数据库名称
    在这里插入图片描述
    2) 在还原数据库文件选项中,可以修改你还原数据库的存放路径,若修改了,在差异备份注意修改备份路径与当前修改路径一致
    在这里插入图片描述
    3)在还原数据库选项中,若是在原来数据库上进行还原,勾选覆盖现有数据库,还原新数据库可勾可不勾,点击【确定】还原成功即可。
    重点:若进行完备后还需进行其他还原,需要选择恢复状态为:RESTORE WITH NORECOVERY)!若无默认选第一个(保持源数据库还原状态视个人情况来选择)
    PS: 若不慎进行误操作,使得数据库一直处于还原状态,但是又不想继续还原其余备份,RESTORE database dbname with recovery恢复数据库为可访问状态。
    在这里插入图片描述
2. 差异备份还原

前提:已经进行了完备还原,并且数据库恢复状态是NORECOVERY
1)选择【数据库】—>【任务】—>【还原】—>【文件和文件组】
在这里插入图片描述
2)选择源设备,添加差异备份文件
在这里插入图片描述
3)选项中选择覆盖现有数据库,完备若修改了还原存储路径,此处记得修改,若后面继续进行其他备份,恢复状态选第二个,否默认选第一个,点击【确定】还原成功即可。
在这里插入图片描述
小知识:笔者有遇到一种情况:拷贝服务器上的bak文件还原到本地,差异备份将会报错,具体报错位置在于无法修改数据库文件的路径,即使使用默认路径也无法进行还原,原因未明

在这里插入图片描述
后来有大佬告诉我,直接用语句执行比较快~

restore database  from disk='xxxxxxxxx.bak' 
with norecovery,stats=5,
move '逻辑文件名' to '还原后数据库数据文件存放路径\逻辑文件名.mdf',
move '逻辑文件名_log' to '还原后数据库日志文件存放路径\逻辑文件名_log.ldf'
3. 事务日志备份还原

假如有某数据库每2个小时进行一次日志备份,7点到11点有2个日志备份,要想还原到10点30分的数据,就得先还原7点到9点的日志备份,再还原9点到11点的日志备份。
1)选择【数据库】—>【任务】—>【还原】—>【事务日志】
在这里插入图片描述
2)选择源设备,添加日志备份文件
在这里插入图片描述
3)选择要还原的具体时间点,点击【确定】
在这里插入图片描述
4)若后面继续进行其他备份,恢复状态选第二个,否默认选第一个,点击【确定】,还原成功后数据库便处于可用状态
在这里插入图片描述
此文作为学习笔记,如有不对的地方,还望各位提出来,感谢!若能帮到大家不胜荣幸。
Alt

  • 15
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值