sqlserver 数据库状态转换图

今天发现一个很好的图,非常清晰的展示了sqlserver的各种状态及切换原因/方法。

简单介绍一下各种状态:

ONLINE(在线):数据库正常运行。只有数据库成功恢复后会进入这个状态,也只有这种状态数据库是正常可用的。

RESTORING(正在还原):正在执行数据库还原。如果还原时使用NORECOVERY 模式,数据库会一直是该状态;如果使用WITH RECOVERY的模式,还原完成后会进入RECOVERING状态。

RECOVERING(正在恢复):执行CREATE DATABASE 、DATABASE STARTUP、ALTER ONLINE和RESTORE WITH RECOERY操作都会经过这个状态。如果遇到问题就进入RECOVERY_PENDING,如果成功则变成ONLINE。

RECOVERY_PENDING(等待恢复):数据库在恢复时遇到资源相关错误,恢复进程被挂起,最可能的原因是丢失数据文件或日志文件。要不用ALTER ONLINE命令使SQLSERVER做一次上线,要不就只能放弃当前数据库,还原备份。

SUSPECT(置疑):恢复时由于数据文件或日志文件损坏而失败,会进入SUSPECT状态,此时DBA只有3种选择。

  • 再做一次ALTER ONLINE ,让SQLSERVER再做一次恢复
  • 放弃当前数据库,还原备份
  • 将数据库状态设置为EMERGENCY,继续尝试修复数据库

EMERGENCY(紧急):这个状态下,SQLSERVER对没有完成恢复的数据库开放一个只读窗口,让DBA在没有备份的情况下尽量挽救数据。

OFFLINE(脱机):离线状态,数据库不能被访问。可以使用ALTER ONLINE命令让数据库开始恢复从而进入ONLINE状态。

 

参考

https://www.cnblogs.com/lyhabc/archive/2012/09/15/2687076.html

https://www.cnblogs.com/OwenZeng/p/6378877.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Hehuyi_In

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值