model Database 손상시 발생하는 영향  복구 방법

 

·         Version : SQL Server

 

SQL Server에서 사용되는 system database에는 master, model, msdb, temp 4가지가 있다. master 경우 SQL Server 대한 속성 정보를 가지고 있기 때문에 중요성에 대해서 많은 사람들이 인지하고 있다이번 시간에는 model 데이터베이스의 중요성에 대해서 알아보고 model 데이터베이스가 손상되었을때 어떤 영향이 있는지그리고 복구 방법에 대해서 알아본다.

 

model 데이터베이스는 SQL Server 인스턴스에서 생성된 모든 사용자 데이터베이스의 템플릿으로 사용된다새로운 데이터베이스를 생성하면 데이터베이스 옵션을 포함하여 model 데이터베이스 전체 내용이 새로운 데이터베이스로 복사된다. tempdb 또한 SQL Server  재시작 될때 model 데이터베이스로부터 일부 속성을 상속 받아 생성된다일반적으로 사용자 데이터베이스의 손상은 빠르게 감지 되지만 (사용자 데이터베이스는 서비스에서 계속 사용중이므로) model 데이터베이스의 경우 시스템이 재시작되거나 새로운 데이터베이스가 만들어질때 까지 손상을 발견하기가 쉽지 않다.

 

만약 model 데이터베이스가 손상된 채로 시스템이 재시작 되면 어떻게 될까위에서 설명하였듯이 SQL Server 재시작될때 temp 새로 생성하게 되는데 이때 model 데이터베이스를 참조하는데 model 데이터베이스  손상되었으므로 tempdb 또한 생성이 실패된다파일 시스템에서 오류 로그를 확인해 보면 tempdb 손상되어 SQL Server 시작하지 못했다는 오류를 발견할  있는데근본적인 원인은 model 데이터베이스가 손상되어 발생한것으로 오류 로그로는 명확하게 원인을 파악하지 못할   있다.

 

model 데이터베이스 손상으로 SQL Server 시작되지 않을 시에는 아래   플래그를 적용하여 SQL Server 시작할  있다.

·         -T3608 :  마스터 데이터베이스만 복구, tedbmp  필요한 작업이 시작되면 model  복구되고 tempdb 생성된다.

·         -T3609 : 모든 데이터베이스 복구, tempdb 지우지 않음.

 

만약  방법으로 복구되지 않고, model 데이터베이스에 대한 백업본이 없다면 동일한 SQL Server 버전  데이터 정렬(collation) 사용하는 다른 데이터베이스로 데이터 파일과 로그 파일을 복사하여 복원할  있다.

 

2017-09-13 / 강성욱 http://sqlmvp.kr / http://sqlangeles.com

 

 

 

SQL Server, MS SQL, model, System database, suspect page, dbcc checkdb, system database curruption

No. Subject Author Date Views
Notice SQL강좌: 챗GPT와 함께 배우는 SQL Server 무료 강좌 목차와 소개 (2023년 9월 업데이트) 코난(김대우) 2023.08.18 41815
Notice Python 무료 강좌 - 기초, 중급, 머신러닝(2023년 6월 업데이트) 코난(김대우) 2021.01.01 22519
2114 SSMS – AlwaysOn Group Latency report jevida(강성욱) 2018.03.31 3495
2113 SQL Server 백업 압축의 압축률 확인 jevida(강성욱) 2018.03.31 4267
2112 SQL Server 교착 상태 모니터링 (-T1222) jevida(강성욱) 2018.03.31 4347
2111 SQL Operations Studio - Linux, MAC에서 사용할 수 있는 SQL DBMS 툴 jevida(강성욱) 2018.03.31 3190
2110 SQL Server 2016 Large RAM 및 Checkpoint jevida(강성욱) 2018.03.31 2350
2109 SQL Server 2016 JSON 형식을 일반 ROW 형식으로 반환하 jevida(강성욱) 2018.03.31 1907
» model Database 손상시 발생하는 영향 및 복구 방법 jevida(강성욱) 2018.03.31 1279
2107 In-Memory OLTP 사용시 메모리 할당량 초과 오류 jevida(강성욱) 2017.09.13 6898
2106 SQL Server 2016 쿼리 실행에 대한 각 스레드(오퍼레이터) 성능 통계 jevida(강성욱) 2017.09.13 7170
2105 Multisubnet환경의 AG 그룹에서 링크드 서버 사용시 주의점 jevida(강성욱) 2017.09.13 6026
2104 SQL Linux에서 Job Agent 설치 jevida(강성욱) 2017.09.13 6052
2103 SQL Linux에서 Windows SQL 백업 파일 복원 jevida(강성욱) 2017.09.13 6069
2102 Linux에서 Network I/O 확인 jevida(강성욱) 2017.09.13 6642
2101 SQL Linux에서traceflag 활성화 jevida(강성욱) 2017.09.13 5706
2100 SQL Linux에서 dump file 위치 변경 jevida(강성욱) 2017.09.13 5497
2099 SQL Linux에서 Port 변경 jevida(강성욱) 2017.09.13 6430
2098 Linux에서 DISK 공간 확인 jevida(강성욱) 2017.09.13 5667
2097 SQL Linux에서collation 변경 jevida(강성욱) 2017.09.13 3637
2096 SQL Linux에서 데이터 및 로그 파일의 기본 디렉토리 변경 jevida(강성욱) 2017.09.13 3951
2095 SQL Linux 기본Configure 명령 jevida(강성욱) 2017.09.13 3490





XE Login