sys.databases(Transact-SQL)

MicrosoftSQL Server 인스턴스의 각 데이터베이스당 한 개의 행을 포함합니다.

데이터베이스가 ONLINE이 아니거나 AUTO_CLOSE가 ON으로 설정되어 있으면 일부 열의 값이 NULL일 수 있습니다. 데이터베이스가 OFFLINE이면 낮은 권한을 가진 사용자는 해당 행을 볼 수 없습니다. 데이터베이스가 OFFLINE인 경우 해당 행을 보려면 최소한 ALTER ANY DATABASE 서버 수준 사용 권한 또는 master 데이터베이스의 CREATE DATABASE 권한을 갖고 있어야 합니다.

열 이름

데이터 형식

설명

name

sysname

SQL Server 인스턴스 내에서 고유한 데이터베이스의 이름입니다.

database_id

int

SQL Server 인스턴스 내에서 고유한 데이터베이스의 ID입니다.

source_database_id

int

NULL이 아닌 경우 = 이 데이터베이스 스냅숏의 원본 데이터베이스 ID입니다.

NULL = 데이터베이스 스냅숏이 아닙니다.

owner_sid

varbinary(85)

서버에 등록된 데이터베이스 외부 소유자의 SID(보안 ID)입니다.

create_date

datetime

데이터베이스가 작성되었거나 이름이 변경된 날짜입니다. tempdb의 경우 이 값은 서버가 다시 시작될 때마다 변경됩니다.

compatibility_level

tinyint

동작이 호환되는 SQL Server의 버전에 해당하는 정수입니다.

70

80

90

100

NULL = 데이터베이스가 온라인이 아니거나 AUTO_CLOSE가 ON으로 설정되어 있습니다.

collation_name

sysname

데이터베이스용 데이터 정렬입니다. 데이터베이스의 기본 데이터 정렬로 사용됩니다.

NULL = 데이터베이스가 온라인이 아니거나 AUTO_CLOSE가 ON으로 설정되어 있습니다.

user_access

tinyint

사용자 액세스 설정입니다.

0 = MULTI_USER로 지정됨

1 = SINGLE_USER로 지정됨

2 = RESTRICTED_USER로 지정됨

user_access_desc

nvarchar(60)

사용자 액세스 설정에 대한 설명입니다.

MULTI_USER

SINGLE_USER

RESTRICTED_USER

is_read_only

bit

1 = 데이터베이스가 READ_ONLY입니다.

0 = 데이터베이스가 READ_WRITE입니다.

is_auto_close_on

bit

1 = AUTO_CLOSE가 ON입니다.

0 = AUTO_CLOSE가 OFF입니다.

is_auto_shrink_on

bit

1 = AUTO_SHRINK가 ON입니다.

0 = AUTO_SHRINK가 OFF입니다.

state

tinyint

데이터베이스 상태입니다.

0 = ONLINE

1 = RESTORING

2 = RECOVERING

3 = RECOVERY_PENDING

4 = SUSPECT

5 = EMERGENCY

6 = OFFLINE

state_desc

nvarchar(60)

데이터베이스 상태에 대한 설명입니다.

ONLINE

RESTORING

RECOVERING

RECOVERY_PENDING

SUSPECT

EMERGENCY

OFFLINE

자세한 내용은 데이터베이스 상태를 참조하십시오.

is_in_standby

bit

데이터베이스가 로그 복원을 위해 읽기 전용 상태임을 나타냅니다.

is_cleanly_shutdown

bit

1 = 데이터베이스가 올바르게 종료되었습니다. 시작할 때 복구가 필요하지 않습니다.

0 = 데이터베이스가 올바르게 종료되지 않았습니다. 시작할 때 복구가 필요합니다.

is_supplemental_logging_enabled

bit

1 = SUPPLEMENTAL_LOGGING이 ON입니다.

0 = SUPPLEMENTAL_LOGGING이 OFF입니다.

snapshot_isolation_state

tinyint

ALLOW_SNAPSHOT_ISOLATION 옵션으로 설정되는 허용된 스냅숏 격리 트랜잭션의 상태입니다.

0 = 스냅숏 격리 상태가 OFF입니다(기본값). 스냅숏 격리가 허용되지 않습니다.

1 = 스냅숏 격리 상태가 ON입니다. 스냅숏 격리가 허용됩니다.

2 = 스냅숏 격리 상태가 OFF로 전환 중입니다. 모든 트랜잭션에는 버전이 부여된 수정판이 있습니다. 스냅숏 격리를 사용해 새 트랜잭션을 시작할 수 없습니다. ALTER DATABASE가 실행되었을 때 활성 상태인 모든 트랜잭션이 완료될 때까지 데이터베이스는 OFF로 전환 중인 상태를 유지합니다.

3 = 스냅숏 격리 상태가 ON으로 전환 중입니다. 새 트랜잭션에는 버전이 부여된 수정판이 있습니다. 스냅숏 격리 상태가 1(ON)이 될 때까지 트랜잭션은 스냅숏 격리를 사용할 수 없습니다. ALTER DATABASE가 실행되었을 때 활성 상태인 모든 업데이트 트랜잭션이 완료될 때까지 데이터베이스는 ON으로 전환 중인 상태를 유지합니다.

snapshot_isolation_state_desc

nvarchar(60)

ALLOW_SNAPSHOT_ISOLATION 옵션으로 설정되는 허용된 스냅숏 격리 트랜잭션의 상태에 대한 설명입니다.

  • OFF

  • ON

  • IN_TRANSITION_TO_ON

  • IN_TRANSITION_TO_OFF

is_read_committed_snapshot_on

bit

1 = READ_COMMITTED_SNAPSHOT 옵션은 ON입니다. READ COMMITTED 격리 수준에서의 읽기 작업은 스냅숏 검색을 기반으로 하며 잠금을 획득하지 않습니다.

0 = READ_COMMITTED_SNAPSHOT 옵션은 OFF(기_본값)입니다. READ COMMITTED 격리 수준에서의 읽기 작업은 공유 잠금을 사용합니다.

recovery_model

tinyint

선택된 복구 모델입니다.

1 = FULL

2 = BULK_LOGGED

3 = SIMPLE

recovery_model_desc

nvarchar(60)

선택된 복구 모델에 대한 설명입니다.

FULL

BULK_LOGGED

SIMPLE

page_verify_option

tinyint

PAGE_VERIFY 옵션 설정입니다.

0 = NONE

1 = TORN_PAGE_DETECTION

2 = CHECKSUM

page_verify_option_desc

nvarchar(60)

PAGE_VERIFY 옵션 설정에 대한 설명입니다.

NONE.TORN_PAGE_DETECTION

CHECKSUM

is_auto_create_stats_on

bit

1 = AUTO_CREATE_STATISTICS가 ON입니다.

0 = AUTO_CREATE_STATISTICS가 OFF입니다.

is_auto_update_stats_on

bit

1 = AUTO_UPDATE_STATISTICS가 ON입니다.

0 = AUTO_UPDATE_STATISTICS가 OFF입니다.

is_auto_update_stats_async_on

bit

1 = AUTO_UPDATE_STATISTICS_ASYNC가 ON입니다.

0 = AUTO_UPDATE_STATISTICS_ASYNC가 OFF입니다.

is_ansi_null_default_on

bit

1 = ANSI_NULL_DEFAULT가 ON입니다.

0 = ANSI_NULL_DEFAULT가 OFF입니다.

is_ansi_nulls_on

bit

1 = ANSI_NULLS가 ON입니다.

0 = ANSI_NULLS가 OFF입니다.

is_ansi_padding_on

bit

1 = ANSI_PADDING이 ON입니다.

0 = ANSI_PADDING이 OFF입니다.

is_ansi_warnings_on

bit

1 = ANSI_WARNINGS가 ON입니다.

0 = ANSI_WARNINGS가 OFF입니다.

is_arithabort_on

bit

1 = ARITHABORT가 ON입니다.

0 = ARITHABORT가 OFF입니다.

is_concat_null_yields_null_on

bit

1 = CONCAT_NULL_YIELDS_NULL이 ON입니다.

0 = CONCAT_NULL_YIELDS_NULL이 OFF입니다.

is_numeric_roundabort_on

bit

1 = NUMERIC_ROUNDABORT가 ON입니다.

0 = NUMERIC_ROUNDABORT가 OFF입니다.

is_quoted_identifier_on

bit

1 = QUOTED_IDENTIFIER가 ON입니다.

0 = QUOTED_IDENTIFIER가 OFF입니다.

is_recursive_triggers_on

bit

1 = RECURSIVE_TRIGGERS가 ON입니다.

0 = RECURSIVE_TRIGGERS가 OFF입니다.

is_cursor_close_on_commit_on

bit

1 = CURSOR_CLOSE_ON_COMMIT이 ON입니다.

0 = CURSOR_CLOSE_ON_COMMIT이 OFF입니다.

is_local_cursor_default

bit

1 = CURSOR_DEFAULT가 로컬입니다.

0 = CURSOR_DEFAULT가 전역입니다.

is_fulltext_enabled

bit

1 = 데이터베이스에서 전체 텍스트를 사용할 수 있습니다.

0 = 데이터베이스에서 전체 텍스트를 사용할 수 없습니다.

is_trustworthy_on

bit

1 = 데이터베이스가 신뢰할 수 있는 것으로 표시되어 있습니다.

0 = 데이터베이스가 신뢰할 수 있는 것으로 표시되지 않았습니다.

is_db_chaining_on

bit

1 = 데이터베이스 간 소유권 체인이 ON 상태입니다.

0 = 데이터베이스 간 소유권 체인이 OFF 상태입니다.

is_parameterization_forced

bit

1 = 매개 변수화가 FORCED로 설정되어 있습니다.

0 = 매개 변수화가 SIMPLE로 설정되어 있습니다.

is_master_key_encrypted_by_server

bit

1 = 데이터베이스에 암호화된 마스터 키가 있습니다.

0 = 데이터베이스에 암호화된 마스터 키가 없습니다.

is_published

bit

1 = 데이터베이스가 트랜잭션 또는 스냅숏 복제 토폴로지에서 게시 데이터베이스입니다.

0 = 게시 데이터베이스가 아닙니다.

is_subscribed

bit

1 = 데이터베이스가 복제 토폴로지에서 구독 데이터베이스입니다.

0 = 구독 데이터베이스가 아닙니다.

is_merge_published

bit

1 = 데이터베이스가 병합 복제 토폴로지에서 게시 데이터베이스입니다.

0 = 병합 복제 토폴로지에서 게시 데이터베이스가 아닙니다.

is_distributor

bit

1 = 데이터베이스가 복제 토폴로지용 배포 데이터베이스입니다.

0 = 복제 토폴로지용 배포 데이터베이스가 아닙니다.

is_sync_with_backup

bit

1 = 데이터베이스가 백업과의 복제 동기화용으로 표시되어 있습니다.

0 = 백업과의 복제 동기화용으로 표시되어 있지 않습니다.

service_broker_guid

uniqueidentifier

이 데이터베이스의 Service Broker ID입니다. 라우팅 테이블에서 대상의 broker_instance로 사용됩니다.

is_broker_enabled

bit

1 = 이 데이터베이스의 브로커가 현재 메시지를 주고받고 있습니다.

0 = 이 데이터베이스에서 보낸 모든 메시지는 전송 큐에서 대기하며 수신된 메시지는 큐에 배치되지 않습니다.

복원되거나 첨부된 데이터베이스의 경우 브로커를 사용하지 않도록 기본 설정됩니다. 단, 장애 조치(Failover) 후 브로커가 설정된 데이터베이스 미러링은 예외입니다.

log_reuse_wait

tinyint

트랜잭션 로그 공간을 다시 사용하기 위해 현재 다음을 기다리고 있습니다.

0 = 없음

1 = 검사점

2 = 로그 백업

3 = 활성 백업 또는 복원

4 = 활성 트랜잭션

5 = 데이터베이스 미러링

6 = 복제

7 = 데이터베이스 스냅숏 생성

8 = 로그 스캔

9 = 기타(일시적)

log_reuse_wait_desc

nvarchar(60)

트랜잭션 로그 공간을 다시 사용하기 위해 무엇을 기다리는지에 대한 설명입니다.

NOTHING

CHECKPOINT

LOG_BACKUP

참고참고
원인이 LOG_BACKUP이면 실제로 공간을 비우기 위해 두 개의 백업이 필요합니다.

ACTIVE_BACKUP_OR_RESTORE

ACTIVE_TRANSACTION

DATABASE_MIRRORING

REPLICATION

DATABASE_SNAPSHOT_CREATION

LOG_SCAN

OTHER_TRANSIENT

자세한 내용은 로그 잘림을 지연시킬 수 있는 요소를 참조하십시오.

is_date_correlation_on

bit

1 = DATE_CORRELATION_OPTIMIZATION이 ON입니다.

0 = DATE_CORRELATION_OPTIMIZATION이 OFF입니다.

is_cdc_enabled

bit

1 = 데이터베이스에 변경 데이터 캡처가 설정되어 있습니다. 자세한 내용은 sys.sp_cdc_enable_db(Transact-SQL)를 참조하십시오.

is_encrypted

bit

데이터베이스가 암호화되었는지 여부를 나타냅니다(ALTER DATABASE SET ENCRYPTION 절을 사용하여 마지막으로 설정된 상태를 표시함). 다음 값 중 하나를 사용할 수 있습니다.

1 = 암호화됨

0 = 암호화되지 않음

데이터베이스 암호화에 대한 자세한 내용은 TDE(Transparent Data Encryption) 이해를 참조하십시오.

데이터베이스를 해독하는 중에는 is_encrypted 값이 0으로 표시됩니다. sys.dm_database_encryption_keys 동적 관리 뷰를 사용하면 암호화 프로세스 상태를 확인할 수 있습니다.

is_broker_priority_honored

bit

데이터베이스에서 대화 우선 순위가 적용되는지 여부를 나타냅니다(ALTER DATABASE SET HONOR_BROKER_PRIORITY 절을 사용하여 마지막으로 설정된 상태를 표시함). 다음 값 중 하나를 사용할 수 있습니다.

1 = HONOR_BROKER_PRIORITY가 ON입니다.

0 = HONOR_BROKER_PRIORITY가 OFF입니다.

자세한 내용은 대화 우선 순위를 참조하십시오.

사용 권한

sys.databases의 호출자가 데이터베이스의 소유자가 아니고 데이터베이스가 master 또는 tempdb가 아닐 경우 해당 열을 보려면 최소한 ALTER ANY DATABASE 또는 VIEW ANY DATABASE 서버 수준 사용 권한 또는 master 데이터베이스의 CREATE DATABASE 권한이 필요합니다. 호출자가 연결된 데이터베이스는 항상 sys.databases에서 볼 수 있습니다.