Windows DB

tempdb 복구 및 이동 방법

2008.05.15 02:39

hostway 조회 수:22795

■ tempdb 복구
  1) tempdb는 SQL Server에서 정렬, GROUP BY를 사용한 집계, 커서 사용, 임시테이블 및 테이블변수 사용,
     일부 JOIN, SORT_IN_TEMPDB 옵션을 사용한 인덱스 생성, 데이터베이스의 복구 작업 등에서 사용됩니다.
  2) 따라서, 손상 시에는 이와 같은 작업들을 진행할 수 없게됩니다.
  3) tempdb의 손상 시 tempdb를 사용하는 작업은 913 오류를 발생하며 정상적으로 실행되지 않습니다.
  4) tempdb가 손상되어 주의 대상 상태인 경우 SQL Server 서비스를 재 시작만하더라도 복구되기도 하지만
     그렇지 않은 경우도 발생
    
     ☞ 이런 경우 다음의 절차를 따라서 tempdb를 재 생성
           . 명령 프롬프트를 실행하고 SQL Server 프로그램이 설치된 경로로 이동
           . T3608 추적 플래그를 사용하여 응용 프로그램으로 시작합니다.
            이때 T4022 추적 플래그도 함께 사용합니다.

                C:Program FilesMicrosoft SQL ServerMSSQLBinnsqlservr.exe -c -T3608 -T4022
            
            . 쿼리 분석기에서 sp_resetstatus 프로시저를 사용하여 주의 대상 모드를 해제

                exec sp_resetstatus 'tempdb'      
    
            . SQL Server를 응용 프로그램으로 시작한 명령 프롬프트 창에서 Ctrl+C 키를 입력한 다음에 Y 키를 눌러
              SQL Server를 종료합니다. 다시 SQL Server 서비스를 정상적으로 시작

■ tempdb 이동
  1) SQL Server 데이터베이스 중 유일하게 tempdb의 경우에는 ALTER DATABASE ~ MODIFY FILE 구문으로
     데이터베이스의 파일의 물리적인 경로를 변경이 가능
  2) 단, 변경한 다음에 SQL Server 서비스를 다시 시작해야만 변경된 위치에 새로운 tempdb가 생성

      . 기존 파일 위치 확인
        use tempdb
        go
        exec sp_helpfile

      . ALTER DATABASE 구문으로 파일의 물리적 경로를 변경
        alter database tempdb
        modify file (name = 'tempdev', filename = 'D:tempdb.mdf')
        go
        alter database tempdb
        modify file (name = 'templog', filename = 'Dtemplog.ldf')
        go

        . SQL Server 서비스를 다시 시작하고 새로운 위치로 변경되었는지 확인한 다음에 기존의 파일을 삭제
          exec sp_helpfile
번호 제목 글쓴이 날짜 조회 수
30 테이블에 있는 악성코드 제거 하기 위한 방법 2 file 호스트웨이 2012.09.06 11297
29 MS-SQL 사용자 DB 경로 변경 호스트웨이 2012.05.04 11305
28 Guide to Secure Configuration of SQL W2K file dalgri 2009.05.14 11610
27 Windows2003 SP2 에서 SQL2008 설치시 오류(0X5EBE5729) 호스트웨이 2012.08.31 12471
26 Windows SQL 2008 Tunning Seminar file dalgri 2009.05.14 12534
25 MSSQL ErrorLog 지우기 file 호스트웨이 2012.07.14 12746
24 SQL 2008 Express 버전 설치 2 file 호스트웨이 2010.04.01 13048
23 System Table Field Query file dalgri 2009.05.14 13231
22 SQL System Query dalgri 2009.05.14 13306
21 Windows Server 2008에서 MS SQL 2008 설치오류에 대한 해결[역할관리도구] file 호스트웨이 2012.08.31 13790
20 SQL Server 2005 설치시 데이터 저장 경로 변경 file 호스트웨이 2012.09.14 13811
19 SQL 2008 Express 버전 설치 1 file 호스트웨이 2010.04.01 13853
18 SQL 빌드 넘버 리스트 호스트웨이 2012.11.08 14051
17 SQL 서버 관리자가 알아야 할 11가지 유용한 팁 호스트웨이 2012.08.03 14438
16 SQL 인젝션 치료용 커서 dhkim 2008.12.10 15078
15 [MS SQL]다른 DB에 있는 테이블 이동/복사하기 호스트웨이 2015.09.15 16047
14 SQL 2008 RTM 에서 유지관리계획 실행 시 Error file 호스트웨이 2012.09.14 16372
13 SQL 인젝션에 이용되는 XP_cmdshell 확장프로시져 삭제 방법 dhkim 2008.12.24 18515
12 [MS-SQL] DB Table 소유자변경 dalgri 2009.05.25 19966
11 MS-SQL 서비스 포트 변경 file 호스트웨이 2012.07.14 20494