model 데이터베이스

model 데이터베이스는 SQL Server 인스턴스에 생성된 모든 데이터베이스에 대한 템플릿으로 사용됩니다. tempdb는 SQL Server가 시작될 때마다 만들어지므로 model 데이터베이스는 항상 SQL Server 시스템에 있어야 합니다. 데이터베이스 옵션을 포함하여 model 데이터베이스의 전체 내용이 새 데이터베이스에 복사됩니다. 또한 model의 일부 설정이 시작되는 동안 새 tempdb를 만드는 데 사용되므로 SQL Server 시스템에 항상 model 데이터베이스가 있어야 합니다.

새로 만든 사용자 데이터베이스는 model 데이터베이스와 같은 복구 모델을 사용합니다. 기본값은 사용자 구성입니다. model의 현재 복구 모델을 확인하는 방법은 데이터베이스 복구 모델 보기 또는 변경을 참조하십시오.

중요 정보중요

사용자별 템플릿 정보를 사용하여 model 데이터베이스를 수정하는 경우 model을 백업하는 것이 좋습니다. 자세한 내용은 시스템 데이터베이스 백업 및 복원(SQL Server)을 참조하십시오.

model 사용

CREATE DATABASE 문을 실행하면 model 데이터베이스의 내용을 복사하여 데이터베이스의 첫 번째 부분이 생성됩니다. 그런 다음 새 데이터베이스의 나머지 부분이 빈 페이지로 채워집니다.

model 데이터베이스를 수정하면 해당 변경 내용이 나중에 생성되는 모든 데이터베이스에 상속됩니다. 예를 들어 사용 권한 또는 데이터베이스 옵션을 설정하거나 테이블, 함수 또는 저장 프로시저 같은 개체를 추가할 수 있습니다.

model의 물리적 속성

다음 표에서는 model 데이터와 로그 파일의 초기 구성 값을 나열합니다. 이러한 파일의 크기는 SQL Server 버전에 따라 조금씩 다를 수 있습니다.

파일

논리적 이름

물리적 이름

파일 증가

주 데이터

modeldev

model.mdf

디스크가 꽉 찰 때까지 10%씩 자동 증가

로그

modellog

modellog.ldf

최대 2TB까지 10%씩 자동 증가

model 데이터베이스나 로그 파일을 이동하려면 시스템 데이터베이스 이동을 참조하십시오.

데이터베이스 옵션

다음 표에서는 model 데이터베이스의 각 데이터베이스 옵션에 대한 기본값과 수정 가능 여부를 나열합니다. 이러한 옵션의 현재 설정을 보려면 sys.databases 카탈로그 뷰를 사용하십시오.

데이터베이스 옵션

기본값

수정 가능

ALLOW_SNAPSHOT_ISOLATION

OFF

ANSI_NULL_DEFAULT

OFF

ANSI_NULLS

OFF

ANSI_PADDING

OFF

ANSI_WARNINGS

OFF

ARITHABORT

OFF

AUTO_CLOSE

OFF

AUTO_CREATE_STATISTICS

ON

AUTO_SHRINK

OFF

AUTO_UPDATE_STATISTICS

ON

AUTO_UPDATE_STATISTICS_ASYNC

OFF

CHANGE_TRACKING

OFF

아니요

CONCAT_NULL_YIELDS_NULL

OFF

CURSOR_CLOSE_ON_COMMIT

OFF

CURSOR_DEFAULT

GLOBAL

데이터베이스 가용성 옵션

ONLINE

MULTI_USER

READ_WRITE

아니요

DATE_CORRELATION_OPTIMIZATION

OFF

DB_CHAINING

OFF

아니요

ENCRYPTION

OFF

아니요

NUMERIC_ROUNDABORT

OFF

PAGE_VERIFY

CHECKSUM

PARAMETERIZATION

SIMPLE

QUOTED_IDENTIFIER

OFF

READ_COMMITTED_SNAPSHOT

OFF

RECOVERY

SQL Server 버전에 따라 다름1

RECURSIVE_TRIGGERS

OFF

Service Broker 옵션

DISABLE_BROKER

아니요

TRUSTWORTHY

OFF

아니요

1 데이터베이스의 현재 복구 모델을 확인하려면 데이터베이스 복구 모델 보기 또는 변경 또는 sys.databases(Transact-SQL)를 참조하십시오.

이러한 데이터베이스 옵션에 대한 자세한 내용은 ALTER DATABASE(Transact-SQL)를 참조하십시오.

제한 사항

model 데이터베이스에서는 다음 작업을 수행할 수 없습니다.

  • 파일이나 파일 그룹 추가

  • 데이터 정렬 변경. 기본 데이터 정렬은 서버 데이터 정렬입니다.

  • 데이터베이스 소유자 변경. modeldbo가 소유합니다.

  • 데이터베이스 삭제

  • 데이터베이스에서 guest 사용자 삭제

  • 변경 데이터 캡처 설정

  • 데이터베이스 미러링 참여

  • 주 파일 그룹, 주 데이터 파일 또는 로그 파일 제거

  • 데이터베이스 또는 주 파일 그룹 이름 바꾸기

  • 데이터베이스를 OFFLINE으로 설정

  • 주 파일 그룹을 READ_ONLY로 설정

  • WITH ENCRYPTION 옵션을 사용하여 프로시저, 뷰 또는 트리거 생성. 암호화 키는 개체가 생성되는 데이터베이스에 연결됩니다. model 데이터베이스에 생성된 암호화된 개체는 model에서만 사용할 수 있습니다.

관련 내용

시스템 데이터베이스

sys.databases(Transact-SQL)

sys.master_files(Transact-SQL)

데이터베이스 파일 이동