重庆思庄Oracle、Redhat认证学习论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1439|回复: 0

SQLSERVER灾难恢复

[复制链接]
发表于 2017-12-13 10:38:06 | 显示全部楼层 |阅读模式
用于数据库灾难恢复
1)创建测试表
create table sztech (name varchar(100))
2)做一次完整备份
backup database test to disk='d:\backup\test_full.bak'with init
3)插入一条数据
1.png
4)做一次日志备份
backup log test to disk='d:\backup\test_log.bak'with init
5)插入一条测试数据
insert into sztech values('日志备份后的测试数据')
现在数据库test有一个完整备份和一个日志备份,而最后那条”日志备份后的测试数据”是在上次日志备份之后的,被结尾日志所包含。
接下来模拟数据库文件所在磁盘损坏(日志文件完好)
1)停掉mssqlserver服务
2)删除数据文件(mdf文件)
此时访问test数据库将出错
2.png
创建尾部日志备份,必须指定no_truncate选项。否则无法备份尾端日志
backup log test to disk='d:\backup\test_log_tail.bak'
with init,no_truncate
3.png
依次进行完整备份恢复,和两次事务日志恢复,可以看到数据已经成功恢复到灾难点:
1.png
恢复语句如下:
restore database test from disk='d:\backup\test_full.bak'with norecovery
restore log test from disk='D:\backup\test_log.bak'with norecovery
restore log test from disk='D:\backup\test_log_tail.bak'with norecovery
restore database test with recovery

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|手机版|小黑屋|重庆思庄Oracle、Redhat认证学习论坛 ( 渝ICP备12004239号-4 )

GMT+8, 2024-4-16 19:26 , Processed in 0.098864 second(s), 23 queries .

重庆思庄学习中心论坛-重庆思庄科技有限公司论坛

© 2001-2020

快速回复 返回顶部 返回列表