SQL Server

SQL Server 2005 주의 대상 (Suspect) DB 복구 방법

미스터몽키 2010. 2. 12. 00:26

어제 갑자기 정전이 되고 때마침 UPS가 작동안하고... 정말 힘든 하루였다. 이번 기회에 UPS에 대해 제대로 공부했다.

그런데 오늘 난데 없이 '주의대상' Suspect 에러가 발생하면서 연결이 안된다.

다른 DB는 되는데 메인 DB만 연결이 안된다.

이곳 저곳 웹에서 해결책을 찾으니 MSSQL2000버전에서의 해결방법이 많다

참 자주 있는 에러인 모양이다.

2005버전에서는 2000버전대로 해도 중간에 에러가 나서 포기하고

다시 찾다가 Naver의 카페 teamsystem에서 해결책을 찾았다 (http://cafe.naver.com/teamsystem/125)

id가  webmars 정말 고마운 분이다.

 

2000보다 2005가 훨씬 간단하게 복구된다. 서비스를 정지할 필요도 없다

 

USE MASTER 에서 다음을 실행하면 된다.  

 

"이제 집에 갈 수 있다 -.-"

 

SQL Server 2005에서 DB가 주의 대상 (Suspect) 모드일 때, 다음의 스크립트를 실행 시키면 됩니다.

 EXEC sp_resetstatus 'yourDBname';
 ALTER DATABASE yourDBname SET EMERGENCY
 DBCC checkdb('yourDBname')
 ALTER DATABASE yourDBname SET SINGLE_USER WITH ROLLBACK IMMEDIATE
 DBCC CheckDB ('yourDBname', REPAIR_ALLOW_DATA_LOSS)
 ALTER DATABASE yourDBname SET MULTI_USER