加入收藏 | 设为首页 | 会员中心 | 我要投稿 通辽站长网 (https://www.0475zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

如何修复sql 2000数据库状态"置疑"? leimin(原作)

发布时间:2022-10-13 01:01:10 所属栏目:MsSql教程 来源:未知
导读: HOW TO FIX SQLSERVER DATABASE SUSPECT?
如何修复数据库状态"置疑"?
在MS SQLSERVER中一直有这样的问题,SQLSERVER的状态"置疑",我们先来分析一下SQLSERVER数据库"置疑"的原因:
1.错误的删

HOW TO FIX SQLSERVER DATABASE SUSPECT?

如何修复数据库状态"置疑"?

在MS SQLSERVER中一直有这样的问题,SQLSERVER的状态"置疑",我们先来分析一下SQLSERVER数据库"置疑"的原因:

1.错误的删除日志;

2.硬件(HD)损坏,造成日志和数据文件写错误;

3.硬盘的空间不够,比如日志文件过大;

解决办法:

这是最简单的办法是有数据库的全备份,然后恢复即可.

步骤:

1. 删除原始的数据库:

USE MASTER

GO

DROP DATABASE DB_SUEPECT

2.建立同名的数据库:

USE master

GO

CREATE DATABASE DB_SUSPECT

ON

( NAME = DBNAME_DAT,

FILENAME = 'C:',

SIZE = 10,

FILEGROWTH = 5 )

LOG ON

( NAME = 'DBNAME_LOG',

FILENAME = 'g:',

SIZE = 5MB,

FILEGROWTH = 5MB )

GO

3.恢复数据库:

RESTORE DATABASE DB_SUSPECT

FROM DBNAME_BACKUP.DAT

4.数据库完整性检测:

DBCC CHECKDB('DB_SUSPECT')

5.重新启动MSSQLSERVER服务.

如果没有全备份,那就要用一些特殊的方法:

1.设置数据库为紧急模式

Use Master

GO

sp_configure 'allow updates', 1

reconfigure with override

GO

UPDATE sysdatabases SET status = 32768 where name = 'DB_SUSPECT'

GO

2.停掉SQL Server服务:

NET STOP MSSQLSERVER

3.把原始数据库的数据文件DBNAME_DAT.MDF,DBNAME_LOG.LDF移走:

4.启动SQL Server服务:

NET START MSSQLSERVER

5.重新建立一个同名的数据库DB_SUSPECT;

USE master

GO

CREATE DATABASE DB_SUSPECT

ON

( NAME = DBNAME_DATmssql数据库空间,

FILENAME = 'C:',

SIZE = 10,

FILEGROWTH = 5 )

LOG ON

( NAME = 'DBNAME_LOG',

FILENAME = 'g:',

SIZE = 5MB,

FILEGROWTH = 5MB )

GO

6.设置数据库运行在单用户的模式:

USE MASTER

GO

ALTER DATABASE DB_SUSPECT SET SINGLE_USER

GO

7.停掉SQL服务:

NET STOP MSSQLSERVER

8.把原来的数据文件再覆盖回来:

9.启动SQL Server服务:

NET START MSSQLSERVER

10.重新设置SQLSERVER的状态:

USE MASTER

GO

EXEC sp_resetstatus "DB_SUSPECT"

11.数据库完整性检测:

DBCC CHECKDB('DB_SUSPECT')

12.恢复数据库为多用户模式:

USE MASTER

GO

ALTER DATABASE DB_SUSPECT SET MULTI_USER

GO

13.恢复SQLSERVER原始的配置:

USE MATER

GO

UPDATE sysdatabases SET status = 4194320 where name = 'DB_SUSPECT'

GO

14.配置SQLSERVER不允许更新系统表:

USE MASTER

GO

sp_configure 'allow updates', 0

reconfigure with override

GO

15.重新启动MSSQLSERVER服务:

最好重新启动操作系统

16.备份数据库:

可以通过SQLSERVER企业管理器或T-SQL.需要备份MASTER和DB_SUSPECT

(编辑:通辽站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!