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





profile

강성욱 / jevida@naver.com
Microsoft SQL Server MVP
Blog : http://sqlmvp.kr
Facebook : http://facebook.com/sqlmvp

Kakao Talk : SQLMVP

Line : jevida


현재 LA에 거주하고 있으며 SQL에 관심있는 분이면 언제든 친추 환영합니다.