안녕하세요... 다름이 아니고 tempdb 이동중에 size를 잘못 지정하여 디스크보다 큰 파일로 size를 잡고, 바로 SQL 엔진을 내리고 올리려고 하니, 시스템 에러 뜨면서 엔진이 안올라오고 있습니다. 이벤트뷰어에는 tempdb.mdf 어쩌고 하면서 DBCC CHECKDB 를 하라 하는대.. 엔진이 올라와야 -0-;; 멀 할땐대 ㅡㅡ;; 이거 어찌 방법 없을까요
재현
*/
use tempdb
go
sp_helpfile
Alter database tempdb modify file (name=tempdev, filename='e:\data\tempdata.mdf',size = 129GB)
Go
Alter database tempdb modify file (name=templog, filename='e:\data\templog.ldf')
/*
시스템카탈로그에서파일"tempdev"이(가) 수정되었습니다. 새경로는다음에데이터베이스가시작될때사용됩니다.
시스템카탈로그에서파일"templog"이(가) 수정되었습니다. 새경로는다음에데이터베이스가시작될때사용됩니다.
SQL 서버정지
SQL 서버재시작
*/ 에러발생
/* 문제 해결
명령어프롬프트 시작>실행>cmd <엔터>
-- sqlservr.exe 디렉토리로이동
cd \Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Binn <엔터>
-- sql 서버강제시작
sqlservr.exe -f -s <인스턴스명> <엔터> --쿼리분석기로해당서버접속사이즈재수정
Alter database tempdb modify file (name=tempdev, filename='C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\tempdb.mdf')
Alter database tempdb modify file (name=templog, filename='C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\templog.ldf')
Ctrl+C 로 SQL서버 정지 /*
커맨드 라인에서 NET START 명령으로 SQL 서버재시작
NET START MSSQL$<인스턴스명>
참고:
SQL Server 2005 온라인 설명서(2007년 9월)
방법: SQL Server 인스턴스 시작(sqlservr.exe)
http://msdn2.microsoft.com/ko-kr/library/ms180965.aspx
INF: 분리/연결(Detach/Attach)을 사용하여 새 위치로 SQL Server 데이터베이스 이동
http://support.microsoft.com/kb/224071/ko