聯(lián)系我們 - 廣告服務(wù) - 聯(lián)系電話:
您的當(dāng)前位置: > 關(guān)注 > > 正文

當(dāng)前速訊:mysql置疑原因是什么?數(shù)據(jù)庫(kù)置疑的處理辦法

來(lái)源:CSDN 時(shí)間:2022-12-08 15:01:37

在MS SQLSERVER中一直有這樣的問(wèn)題,SQLSERVER的狀態(tài)"置疑",我們先來(lái)分析一下SQLSERVER數(shù)據(jù)庫(kù)"置疑"的原因:


(資料圖片僅供參考)

1.錯(cuò)誤的刪除日志;

2.硬件(HD)損壞,造成日志和數(shù)據(jù)文件寫(xiě)錯(cuò)誤;

3.硬盤(pán)的空間不夠,比如日志文件過(guò)大;

解決辦法:

這是最簡(jiǎn)單的辦法是有數(shù)據(jù)庫(kù)的全備份,然后恢復(fù)即可.

步驟:

1. 刪除原始的數(shù)據(jù)庫(kù):

USE MASTER

GO

DROP DATABASE DB_SUEPECT

2.建立同名的數(shù)據(jù)庫(kù):

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.恢復(fù)數(shù)據(jù)庫(kù):

RESTORE DATABASE DB_SUSPECT

FROM DBNAME_BACKUP.DAT

4.數(shù)據(jù)庫(kù)完整性檢測(cè):

DBCC CHECKDB("DB_SUSPECT")

5.重新啟動(dòng)MSSQLSERVER服務(wù).

如果沒(méi)有全備份,那就要用一些特殊的方法:

1.設(shè)置數(shù)據(jù)庫(kù)為緊急模式

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服務(wù):

NET STOP MSSQLSERVER

3.把原始數(shù)據(jù)庫(kù)的數(shù)據(jù)文件DBNAME_DAT.MDF,DBNAME_LOG.LDF移走:

4.啟動(dòng)SQL Server服務(wù):

NET START MSSQLSERVER

5.重新建立一個(gè)同名的數(shù)據(jù)庫(kù)DB_SUSPECT;

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

6.設(shè)置數(shù)據(jù)庫(kù)運(yùn)行在單用戶的模式:

USE MASTER

GO

ALTER DATABASE DB_SUSPECT SET SINGLE_USER

GO

7.停掉SQL服務(wù):

NET STOP MSSQLSERVER

8.把原來(lái)的數(shù)據(jù)文件再覆蓋回來(lái):

9.啟動(dòng)SQL Server服務(wù):

NET START MSSQLSERVER

10.重新設(shè)置SQLSERVER的狀態(tài):

USE MASTER

GO

EXEC sp_resetstatus "DB_SUSPECT"

11.數(shù)據(jù)庫(kù)完整性檢測(cè):

DBCC CHECKDB("DB_SUSPECT")

12.恢復(fù)數(shù)據(jù)庫(kù)為多用戶模式:

USE MASTER

GO

ALTER DATABASE DB_SUSPECT SET MULTI_USER

GO

13.恢復(fù)SQLSERVER原始的配置:

USE MATER

GO

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

GO

14.配置SQLSERVER不允許更新系統(tǒng)表:

USE MASTER

GO

sp_configure "allow updates", 0

reconfigure with override

GO

15.重新啟動(dòng)MSSQLSERVER服務(wù):

最好重新啟動(dòng)操作系統(tǒng)

16.備份數(shù)據(jù)庫(kù):

可以通過(guò)SQLSERVER企業(yè)管理器或T-SQL.需要備份MASTER和DB_SUSPECT

補(bǔ)充一點(diǎn),如果用DOMAIN\USER時(shí),要注意對(duì).MDF.LDF的所在目錄的權(quán)限.

責(zé)任編輯:

標(biāo)簽: 重新啟動(dòng)

相關(guān)推薦:

精彩放送:

新聞聚焦
Top