sqlserver数据库状态转换图
状态的转换
数据库有很多状态。他们是如何在这些状态之间进行切换的呢?下面这个图非常清晰的标示了各个状态的切换。
ONLINE (在线)
数据库可正常运行
RESTORING (正在还原)
数据库正在还原,当我们还原数据库使用NORECOVERY 模式时,数据库就会变成该状态
RECOVERING (正在恢复)
数据库启动,数据库创建,ALTER ONLINE,RESTORE WITH RECOERY 时,会经过这个状态,进行REDO,UNDO等操作。此时如果遇到问题就进入RECOVERY_PENDING。如果正常就会变成ONLINE。
RECOVERY_PENDING(等待恢复)
数据库在还原时遇到跟资源相关的错误,表明还原进程被挂起,数据库不能开始数据库的数据和日志的还原进程,这种情况下,最可能的原因是丢失数据文件或日志文件。
SUSPECT (置疑)
数据库可能损坏了
EMERGENCY (紧急)
供DBA用来修复数据库的状态
OFFLINE (脱机)
离线状态