Share via


시스템 데이터베이스

SQL Server 에 포함된 시스템 데이터베이스는 다음과 같습니다.

시스템 데이터베이스 Description
master 데이터베이스 SQL Server인스턴스에 대한 모든 시스템 수준 정보를 기록합니다.
msdb 데이터베이스 SQL Server 에이전트에서 알림과 작업을 예약하는 데 사용됩니다.
model 데이터베이스 SQL Server에서 생성되는 모든 데이터베이스에 대한 템플릿으로 사용됩니다. model 데이터베이스의 크기, 정렬, 복구 모델 또는 데이터베이스 옵션의 수정 내용은 이후에 생성되는 모든 데이터베이스에 적용됩니다.
Resource 데이터베이스 SQL Server에 포함된 시스템 개체가 들어 있는 읽기 전용 데이터베이스입니다. 시스템 개체는 실제로는 Resource 데이터베이스에 저장되지만 논리적으로는 모든 데이터베이스의 sys 스키마에 나타납니다.
tempdb 데이터베이스 임시 개체나 중간 결과 집합을 보관하기 위한 작업 영역입니다.

시스템 데이터 수정

SQL Server 에서는 사용자가 시스템 테이블, 시스템 저장 프로시저 및 카탈로그 뷰와 같은 시스템 개체의 정보를 직접 업데이트할 수 없습니다. 대신 SQL Server 에서는 사용자가 시스템을 완전히 관리하고 데이터베이스의 모든 사용자와 개체를 관리하는 데 사용할 수 있는 완전한 관리 도구 집합을 제공합니다. 여기에는 다음과 같은 옵션이 포함됩니다.

  • SQL Server Management Studio등의 관리 유틸리티

  • SQL-SMO API. 이 도구를 통해 프로그래머는 SQL Server 를 관리할 수 있는 완전한 기능을 애플리케이션에 포함할 수 있습니다.

  • Transact-SQL 스크립트 및 저장 프로시저. 시스템 저장 프로시저 및 Transact-SQL DDL 문을 사용할 수 있습니다.

이러한 관리 도구는 시스템 개체의 변경 내용으로부터 애플리케이션을 보호합니다. 예를 들어 SQL Server 에서는 새 버전의 SQL Server 에 새로 추가되는 기능을 지원하기 위해 시스템 테이블을 변경해야 하는 경우가 있습니다. 시스템 테이블을 직접 참조하는 SELECT 문을 실행하는 애플리케이션은 대개 시스템 테이블의 이전 형식을 기준으로 합니다. 사이트는 시스템 테이블에서 선택되는 애플리케이션을 다시 작성해야만 새 버전의 SQL Server 로 업그레이드할 수 있습니다. SQL Server 에서는 시스템 저장 프로시저, DDL 및 SQL-SMO 게시 인터페이스를 고려하며 이러한 인터페이스와 이전 버전과의 호환성을 유지합니다.

SQL Server 에서는 시스템의 작업을 수정할 수 있기 때문에 시스템 테이블에 정의된 트리거는 지원하지 않습니다.

참고

시스템 데이터베이스는 UNC 공유 디렉터리에 있을 수 없습니다.

시스템 데이터베이스 데이터 보기

애플리케이션에 필요한 정보를 가져오는 유일한 방법이 아니라면 시스템 테이블을 직접 쿼리하는 Transact-SQL 문을 코딩해서는 안 됩니다. 대신 다음 항목을 사용하여 애플리케이션에서 카탈로그나 시스템 정보를 얻어야 합니다.

  • 시스템 카탈로그 뷰

  • SQL-SMO

  • WMI(Windows Management Instrumentation) 인터페이스

  • ADO, OLE DB, ODBC 등의 애플리케이션에 사용되는 데이터 API의 카탈로그 함수, 메서드, 특성 또는 속성

  • Transact-SQL 시스템 저장 프로시저 및 기본 제공 함수.

시스템 데이터베이스 백업 및 복원(SQL Server)

개체 탐색기에서 시스템 개체 숨기기

카탈로그 뷰(Transact-SQL)

데이터베이스