用DATABASEPROPERTYEX()检查恢复过程的状态

果你正在进程中恢复数据库,在恢复过程后需要做了几步工作,那么你可以用DATABASEPROPERTYEX()系统函数检查恢复过程的状态。这个函数的状态属性将表明这个数据库状态的结果。这是个SQL Server 2000里才有的新函数。下面是一个脚本的例子:

 
SELECT DATABASEPROPERTYEX('Northwind', 'Status')
/*
ONLINE = 数据库可以查询
OFFLINE = 数据库显式脱机
RESTORING =数据库正在恢复
RECOVERING = 数据库正在恢复,还不能查询
SUSPECT = 数据库不能恢复
*/

SQL Server 2000以前的版本,用DATABASEPROPERTY()系统函数。IsInRecovery属性将给出数据库的恢复状态。下面是SQL Server 7.0的脚本例子:

SELECT DATABASEPROPERTY('Northwind', 'IsInRecovery')
/*
1 = TRUE
0 = FALSE
NULL = Invalid input
*/

在进行数据库恢复后的几步工作前,一直检查数据库的状态,直到数据库在线可用了,不在恢复过程中为止。如果在恢复一段时间之后,没有返回一个表明数据是可用的状态,那么你需要检查数据库的其他状态。它表明:在过程继续进行前,有另外一个问题需要处理。

时间: 2025-01-30 10:25:01

用DATABASEPROPERTYEX()检查恢复过程的状态的相关文章

MySQL · 引擎特性 · InnoDB 崩溃恢复过程

在前面两篇文章中,我们详细介绍了 InnoDB redo log 和 undo log 的相关知识,本文将介绍 InnoDB 在崩溃恢复时的主要流程. 本文代码分析基于 MySQL 5.7.7-RC 版本,函数入口为 innobase_start_or_create_for_mysql,这是一个非常冗长的函数,本文只涉及和崩溃恢复相关的代码. 在阅读本文前,强烈建议翻阅下面两篇文章: 1. MySQL · 引擎特性 · InnoDB undo log 漫游 2. MySQL · 引擎特性 · I

HP-EVA4400故障导致的oracle数据库丢失的恢复过程

一.故障描述 整个EVA存储结构是由一台EVA4400控制器,三台EVA4400扩展柜和28块FC 300G硬盘构成的.由于两块磁盘掉线导致存储某些LUN不可用,某些LUN丢失.由于EVA4400是因为某些磁盘掉线,从而导致整个存储不可用.因此接收到磁盘以后北亚工程师先对所有磁盘做物理检测,检测完后发现没有物理故障.接着使用坏道检测工具检测磁盘坏道,发现也没有坏道.磁盘坏道检测日志如下: 图一: 二.备份数据 考虑到数据的安全性以及可还原性,在做数据恢复之前需要对所有源数据做备份,以防万一操作不

oralce数据库恢复过程详解

某客户的数据库出现崩溃,无法正常启动,经过我的远程紧急救援恢复之后,恢复正常,如下是简单的处理过程,供参考! 在open数据库时,发现无法打开,报错如下: SMON: enabling cache recovery ORA-01555 caused by SQL statement below (SQL ID: 4krwuz0ctqxdt, SCN: 0x0000.1d2be1e6): select ctime, mtime, stime from obj$ where obj# = :1 Er

MySQL · TokuDB · 日志子系统和崩溃恢复过程

TokuDB日志子系统 MySQL重启后自动加载InnoDB和其他的动态plugin,包括TokuDB.每一plugin在注册的时候指定init和deinit回调函数.TokuDB的init/deinit函数分别是tokudb_init_func和tokudb_done_func. MySQL重启过程中调用tokudb_init_func进行必要的初始化.在tokudb_init_func里面,调用db_env_create创建一个env实例,进行参数设置和callback设置.db_env_c

Tokudb的日志子系统和崩溃恢复过程

TokuDB日志子系统 MySQL重启后自动加载InnoDB和其他的动态plugin,包括TokuDB.每一plugin在注册的时候指定init和deinit回调函数.TokuDB的init/deinit函数分别是tokudb_init_func和tokudb_done_func. MySQL重启过程中调用tokudb_init_func进行必要的初始化.在tokudb_init_func里面,调用db_env_create创建一个env实例,进行参数设置和callback设置.db_env_c

如何终止数据库恢复过程

当某一正常运行的大事务(例如:update.delete操作)被终止,且重新启动server后,运行该事务的数据库处于恢复状态,通常这种状态会持续很长时间,当在此恢复过程中没有出现任何异常时,建议用户耐心等待恢复过程完成.同时我们提供以下方法来终止此恢复过程,但请用户注意这些操作将带来数据的不一致性.必要时,希望用户用完整.可靠的数据库备份恢复此数据库. (1) 启动Backup Server, 后备master数据库(这一步很重要!) 1>dump database master to "

服务器 raid5数据丢失的恢复过程

第一部分:数据恢复方案 [用户单位]某医药公司 [故障描述] IBM X3850服务器,5块73G SAS硬盘,其中4块组成一个RAID5,另一块做为热备盘(Hot-Spare),3号盘早已经离线,但热备盘未自动激活rebuild(原因不明),之后2号盘离线,RAID崩溃. 操作系统为linux redhat 5.3,应用系统为构架于oracle的一个oa,数据重要,时间很急.因oracle已经不再对本oa系统提供后续支持,用户要求尽可能数据恢复+操作系统复原. [初检结论] 热备盘完全无启用,

sqlserver2005 master与msdb数据库备份恢复过程_mssql2005

由于系统数据库对Sql Server来说尤其重要,为了确保SQL SERVER系统的正常运行,除了日常备份用户的数据库之外,我们还需要备份系统数据库,如对Master,Model,Msdb(TempDB不需备份)进行完整备份 1.还原Master数据库 如果系统配置丢失或Master出现问题,可以进入单用户模式进行还原:如果出现下列情况,必须重新生成损坏的 master 数据库:A. master 数据库的当前备份不可用.B. 存在 master 数据库备份,但由于 Microsoft SQL

ipad air2越狱后恢复到未越狱状态图解

1.下载好XY刷机助手然后安装在电脑打开助手,把ipad air与电脑连接然后点击"一键刷机"(下面截图是以iphone5c为例子,其实不会影响正确的刷机):     2.进入导入或下载固件页面,可以自动匹配可刷固件版本,点击"开始刷机"开始下载固件,固件下载完后自动进入刷机流程.如果已下载好固件,可以直接"导入固件"开始刷机(下面截图是以iphone5c为例子,其实不会影响正确的刷机): .       3.刷机时间不会太长几分钟就可以了,此时