您的位置:首页 > 数据库

SQL server 数据库被标记为RESTORING的处理方式

2013-02-19 15:27 459 查看
尝试数据库被标记为RESTORING的处理方式

  /****

  by select left('claro',2),in 西安,2009-03-27 00:29:23.450

  Microsoft SQL Server 2005 - 9.00.1406.00

  (Intel X86)

  Mar 3 2007 18:40:02

  Copyright (c) 1988-2005 Microsoft Corporation

  Enterprise Edition on Windows NT 5.2 (Build 3790: Service Pack 2)

  ****/

  USE [master]

  GO

  -->1.查询数据库状态

  select state_desc,name,user_access_desc from sys.databases where name='db'

  --state_desc name user_access_desc

  --RESTORING Db MULTI_USER

  -->2.修改数据库状态

  ALTER DATABASE [Db] SET ONLINE

  --消息5052,级别16,状态1,第1 行

  --当数据库处于Restoring 状态时,不允许ALTER DATABASE。

  --消息5069,级别16,状态1,第1 行

  --ALTER DATABASE 语句失败。

  -->3.设置数据库状态为紧急恢复模式

  ALTER DATABASE [Db] SET EMERGENCY

  --消息5052,级别16,状态1,第1 行

  --当数据库处于Restoring 状态时,不允许ALTER DATABASE。

  --消息5069,级别16,状态1,第1 行

  --ALTER DATABASE 语句失败。

  -->4.设置数据库状态为单用户模式

  ALTER DATABASE [Db] SET SINGLE_USER

  --消息5052,级别16,状态1,第1 行

  --当数据库处于Restoring 状态时,不允许ALTER DATABASE。

  --消息5069,级别16,状态1,第1 行

  --ALTER DATABASE 语句失败。

  -->5.CHECKDB检查

  DBCC CHECKDB (db,REPAIR_ALLOW_DATA_LOSS)

  --消息927,级别14,状态2,第1 行

  --无法打开数据库'Db'。该数据库正在进行还原。

  -->6.尝试用备份集继续还原

  RESTORE DATABASE [Db] FROM DISK = N'c:db.bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 10

  GO

  --已处理百分之13。

  --已处理百分之22。

  --已处理百分之31。

  --已处理百分之40。

  --已处理百分之54。

  --已处理百分之63。

  --已处理百分之72。

  --已处理百分之81。

  --已处理百分之90。

  --已处理百分之100。

  --已为数据库'Db',文件'Db' (位于文件1 上)处理了176 页。

  --已为数据库'Db',文件'Db_log' (位于文件1 上)处理了2 页。

  --RESTORE DATABASE 成功处理了178 页,花费0.159 秒(9.125 MB/秒)。

  -->7.检查数据库状态

  select state_desc,name,user_access_desc from sys.databases where name='db'

  --state_desc name user_access_desc

  --ONLINE Db MULTI_USER

  --至此db数据库正常。后续将尝试数据库处于置疑等状态时,数据库的修复方式。

======================================================================================================

其他方法:

这个显示是指:正在还原中..

如果确定还原完毕,可以用

SQL code

restore database 数据库A with recovery

或者:

RESTORE DATABASE db FROM DISK='c:\1.bak' (WITH RECOVERY )
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐