笔记46 SQL2005数据库置疑或者丢失日志文件的解决方法

笔记46 SQL2005数据库置疑或者丢失日志文件的解决方法

 1 --SQL2005数据库置疑或者丢失日志文件的解决方法
 2 USE master
 3 --1.首先查看下数据库此时的状态
 4 select name,state,state_desc from sys.databases where name='GPOSDB'
 5 
 6 
 7 --2.设置数据库为紧急模式
 8 ALTER DATABASE  GPOSDB SET EMERGENCY
 9 select name,state,state_desc  from sys.databases where name='GPOSDB'
10 
11 
12 --3.设置数据库为单用户模式
13 ALTER DATABASE GPOSDB  SET SINGLE_USER  WITH ROLLBACK  IMMEDIATE
14 
15 
16 --4.重建日志文件
17 DBCC CHECKDB('GPOSDB',REPAIR_ALLOW_DATA_LOSS)
18 
19 
20 --文件激活失败。物理文件名称'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\GPOSDB_log.ldf'可能不正确。
21 --将禁用数据库 "GPOSDB" 中的 Service Broker,因为数据库(5E61BFFB-E71A-4671-9599-F32BF58F1588)中的 Service Broker GUID 与 sys.databases (517126A5-3319-4BF4-A449-384D4DA1A578)中的不匹配。
22 --警告: 数据库 'GPOSDB' 的日志已重新生成。已失去事务的一致性。RESTORE 链已断开,服务器不再有以前的日志文件的上下文,因此您需要了解它们的内容。应运行 DBCC CHECKDB 验证物理一致性。数据库已置于 dbo-only 模式。在准备使数据库可用时,需要重置数据库选项,并删除所有多余的日志文件。
23 
24 
25 
26 --5.检查数据库状态
27 select name,state,state_desc  from sys.databases where name='GPOSDB'
28 
29 --6.将数据库由单用户模式修改为多用户模式
30 ALTER DATABASE GPOSDB  SET MULTI_USER
31 
32 
33 
34 --数据库此时已可正常使用

 

posted @ 2013-08-02 22:21  桦仔  阅读(1563)  评论(0编辑  收藏  举报