시스템 데이터베이스System Databases

SQL ServerSQL Server 에 포함된 시스템 데이터베이스는 다음과 같습니다. includes the following system databases.

시스템 데이터베이스System database 설명Description
master 데이터베이스master Database SQL ServerSQL Server인스턴스에 대한 모든 시스템 수준 정보를 기록합니다.Records all the system-level information for an instance of SQL ServerSQL Server.
msdb 데이터베이스msdb Database SQL Server 에이전트에서 알림과 작업을 예약하는 데 사용됩니다.Is used by SQL Server Agent for scheduling alerts and jobs.
model 데이터베이스model Database SQL ServerSQL Server에서 생성되는 모든 데이터베이스에 대한 템플릿으로 사용됩니다.Is used as the template for all databases created on the instance of SQL ServerSQL Server. model 데이터베이스의 크기, 정렬, 복구 모델 또는 데이터베이스 옵션의 수정 내용은 이후에 생성되는 모든 데이터베이스에 적용됩니다.Modifications made to the model database, such as database size, collation, recovery model, and other database options, are applied to any databases created afterward.
Resource 데이터베이스Resource Database SQL ServerSQL Server에 포함된 시스템 개체가 들어 있는 읽기 전용 데이터베이스입니다.Is a read-only database that contains system objects that are included with SQL ServerSQL Server. 시스템 개체는 실제로는 Resource 데이터베이스에 저장되지만 논리적으로는 모든 데이터베이스의 sys 스키마에 나타납니다.System objects are physically persisted in the Resource database, but they logically appear in the sys schema of every database.
tempdb 데이터베이스tempdb Database 임시 개체나 중간 결과 집합을 보관하기 위한 작업 영역입니다.Is a workspace for holding temporary objects or intermediate result sets.

시스템 데이터 수정Modifying System Data

SQL ServerSQL Server 에서는 사용자가 시스템 테이블, 시스템 저장 프로시저 및 카탈로그 뷰와 같은 시스템 개체의 정보를 직접 업데이트할 수 없습니다. does not support users directly updating the information in system objects such as system tables, system stored procedures, and catalog views. 대신 SQL ServerSQL Server 에서는 사용자가 시스템을 완전히 관리하고 데이터베이스의 모든 사용자와 개체를 관리하는 데 사용할 수 있는 완전한 관리 도구 집합을 제공합니다.Instead, SQL ServerSQL Server provides a complete set of administrative tools that let users fully administer their system and manage all users and objects in a database. 여기에는 다음과 같은 옵션이 포함됩니다.These include the following:

  • SQL Server Management StudioSQL Server Management Studio등의 관리 유틸리티Administration utilities, such as SQL Server Management StudioSQL Server Management Studio.

  • SQL-SMO API.SQL-SMO API. 이 도구를 통해 프로그래머는 SQL ServerSQL Server 를 관리할 수 있는 완전한 기능을 응용 프로그램에 포함할 수 있습니다.This lets programmers include complete functionality for administering SQL ServerSQL Server in their applications.

  • Transact-SQLTransact-SQL 스크립트 및 저장 프로시저. scripts and stored procedures. 시스템 저장 프로시저와 Transact-SQLTransact-SQL DDL 문을 사용할 수 있습니다.These can use system stored procedures and Transact-SQLTransact-SQL DDL statements.

    이러한 관리 도구는 시스템 개체의 변경 내용으로부터 응용 프로그램을 보호합니다.These tools shield applications from changes in the system objects. 예를 들어 SQL ServerSQL Server 에서는 새 버전의 SQL ServerSQL Server 에 새로 추가되는 기능을 지원하기 위해 시스템 테이블을 변경해야 하는 경우가 있습니다.For example, SQL ServerSQL Server sometimes has to change the system tables in new versions of SQL ServerSQL Server to support new functionality that is being added in that version. 시스템 테이블을 직접 참조하는 SELECT 문을 실행하는 응용 프로그램은 대개 시스템 테이블의 이전 형식을 기준으로 합니다.Applications issuing SELECT statements that directly reference system tables are frequently dependent on the old format of the system tables. 사이트는 시스템 테이블에서 선택되는 응용 프로그램을 다시 작성해야만 새 버전의 SQL ServerSQL Server 로 업그레이드할 수 있습니다.Sites may not be able to upgrade to a new version of SQL ServerSQL Server until they have rewritten applications that are selecting from system tables. SQL ServerSQL Server 에서는 시스템 저장 프로시저, DDL 및 SQL-SMO 게시 인터페이스를 고려하며 이러한 인터페이스와 이전 버전과의 호환성을 유지합니다. considers the system stored procedures, DDL, and SQL-SMO published interfaces, and works to maintain the backward compatibility of these interfaces.

    SQL ServerSQL Server 에서는 시스템의 작업을 수정할 수 있기 때문에 시스템 테이블에 정의된 트리거는 지원하지 않습니다. does not support triggers defined on the system tables, because they might modify the operation of the system.

참고

시스템 데이터베이스는 UNC 공유 디렉터리에 있을 수 없습니다.System databases cannot reside on UNC share directories.

시스템 데이터베이스 데이터 보기Viewing System Database Data

응용 프로그램에 필요한 정보를 얻기 위해 불가피한 경우가 아니면 시스템 테이블을 직접 쿼리하는 Transact-SQLTransact-SQL 문을 작성하지 마십시오.You should not code Transact-SQLTransact-SQL statements that directly query the system tables, unless that is the only way to obtain the information that is required by the application. 대신 다음 항목을 사용하여 응용 프로그램에서 카탈로그나 시스템 정보를 얻어야 합니다.Instead, applications should obtain catalog and system information by using the following:

  • 시스템 카탈로그 뷰System catalog views

  • SQL-SMOSQL-SMO

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

  • ADO, OLE DB, ODBC 등의 응용 프로그램에 사용되는 데이터 API의 카탈로그 함수, 메서드, 특성 또는 속성Catalog functions, methods, attributes, or properties of the data API used in the application, such as ADO, OLE DB, or ODBC.

  • Transact-SQLTransact-SQL 시스템 저장 프로시저 및 기본 제공 함수 system stored procedures and built-in functions.

시스템 데이터베이스 백업 및 복원(SQL Server)Back Up and Restore of System Databases (SQL Server)

개체 탐색기에서 시스템 개체 숨기기Hide System Objects in Object Explorer

카탈로그 뷰(Transact-SQL)Catalog Views (Transact-SQL)

데이터베이스Databases