다음을 통해 공유


sys.database_files(Transact-SQL)

데이터베이스 자체에 저장되어 있는 각 데이터베이스 파일당 한 개의 행을 포함합니다. 이 뷰는 데이터베이스별 뷰입니다.

열 이름

데이터 형식

설명

file_id

int

데이터베이스 내 파일의 ID입니다.

file_guid

uniqueidentifier

파일에 대한 GUID입니다.

NULL = 데이터베이스가 이전 버전의 SQL Server에서 업그레이드되었습니다.

type

tinyint

파일 유형입니다.

0 = 행(SQL Server 2012로 업그레이드되었거나 SQL Server 2012에서 만들어진 전체 텍스트 카탈로그의 파일을 포함함)

1 = 로그

2 = FILESTREAM

3 = 정보를 제공하기 위해서만 확인됩니다. 지원되지 않습니다. 향후 호환성은 보장되지 않습니다.

4 = 전체 텍스트(SQL Server 2012 이전의 전체 텍스트 카탈로그. SQL Server 2012로 업그레이드되었거나 SQL Server 2012에서 생성된 전체 텍스트 카탈로그는 파일 유형 0을 보고함)

type_desc

nvarchar(60)

파일 유형에 대한 설명입니다.

ROWS(SQL Server 2012로 업그레이드되었거나 SQL Server 2012에서 생성된 전체 텍스트 카탈로그의 파일을 포함함)

LOG

FILESTREAM

FULLTEXT(SQL Server 2012 이전의 전체 텍스트 카탈로그)

data_space_id

int

값은 0 이상일 수 있습니다. 값 0은 데이터베이스 로그 파일을 나타내고 0보다 큰 값은 이 데이터 파일이 저장되는 파일 그룹의 ID를 나타냅니다.

name

sysname

데이터베이스에서 파일의 논리적 이름입니다.

physical_name

nvarchar(260)

운영 체제 파일 이름입니다. AlwaysOn 읽기 가능한 보조 복제본에 의해 데이터베이스가 호스팅되면 physical_name 주 복제본 데이터베이스의 파일 위치를 나타냅니다. 읽기 가능한 보조 데이터베이스의 올바른 파일 위치는 sys.sysaltfiles에 쿼리합니다.

state

tinyint

파일 상태입니다.

0 = ONLINE

1 = RESTORING

2 = RECOVERING

3 = RECOVERY_PENDING

4 = SUSPECT

5 = 정보를 제공하기 위해서만 확인됩니다. 지원되지 않습니다. 향후 호환성은 보장되지 않습니다.

6 = OFFLINE

7 = DEFUNCT

state_desc

nvarchar(60)

파일 상태에 대한 설명입니다.

ONLINE

RESTORING

RECOVERING

RECOVERY_PENDING

SUSPECT

OFFLINE

DEFUNCT

자세한 내용은 파일 상태를 참조하십시오.

size

int

8KB 페이지 단위로 나타낸 파일의 현재 크기입니다.

0 = 해당 사항 없음

데이터베이스 스냅숏의 경우 size는 스냅숏이 파일에 대해 사용할 수 있는 최대 공간을 나타냅니다.

FILESTREAM 파일 그룹 컨테이너의 경우 size는 컨테이너의 현재 사용된 크기를 나타냅니다.

max_size

int

8KB 페이지 단위로 나타낸 파일의 최대 크기입니다.

0 = 증가를 허용하지 않습니다.

-1 = 디스크가 꽉 찰 때까지 파일이 증가합니다.

268435456 = 로그 파일 크기는 최대 2TB까지 증가합니다.

[!참고]

로그 파일 크기에 제한이 없도록 업그레이드된 데이터베이스는 로그 파일의 최대 크기로 -1을 보고합니다.

FILESTREAM 파일 그룹 컨테이너의 경우 max_size는 컨테이너의 최대 크기를 나타냅니다.

growth

int

0 = 파일 크기가 고정되어 증가하지 않습니다.

>0 = 파일이 자동으로 증가합니다.

is_percent_growth = 0일 경우 증분은 8KB 페이지 단위로 표시되며 64KB 단위로 반올림됩니다.

is_percent_growth = 1이면 증분은 정수 백분율로 표시됩니다.

is_media_read_only

bit

1 = 파일이 읽기 전용 미디어에 있습니다.

0 = 파일이 읽기/쓰기 미디어에 있습니다.

is_read_only

bit

1 = 파일이 읽기 전용으로 표시되어 있습니다.

0 = 파일이 읽기/쓰기로 표시되어 있습니다.

is_sparse

bit

1 = 스파스 파일입니다.

0 = 스파스 파일이 아닙니다.

자세한 내용은 데이터베이스 스냅숏 스파스 파일의 크기 보기(Transact-SQL)를 참조하십시오.

is_percent_growth

bit

1 = 파일의 증가 단위가 백분율입니다.

0 = 페이지 단위의 절대 증가 크기입니다.

is_name_reserved

bit

1 = 삭제된 파일 이름(name 또는 physical_name)은 다음 로그 백업 후에만 다시 사용할 수 있습니다. 데이터베이스에서 파일을 삭제할 때 논리적 이름은 다음 로그 백업까지 예약된 상태로 유지됩니다. 이 열은 전체 복구 모델 및 대량 로그 복구 모델에만 해당됩니다.

create_lsn

numeric(25,0)

파일이 생성된 시점의 LSN(로그 시퀀스 번호)입니다.

drop_lsn

numeric(25,0)

파일이 삭제된 시점의 LSN입니다.

0 = 이 파일 이름을 다시 사용할 수 없습니다.

read_only_lsn

numeric(25,0)

해당 파일이 포함된 파일 그룹이 읽기/쓰기에서 읽기 전용으로 변경된 시점(가장 최근 변경)의 LSN입니다.

read_write_lsn

numeric(25,0)

해당 파일이 포함된 파일 그룹이 읽기 전용에서 읽기/쓰기로 변경된 시점(가장 최근 변경)의 LSN입니다.

differential_base_lsn

numeric(25,0)

차등 백업에 대한 기본 LSN입니다. 이 LSN 이후에 변경된 데이터 익스텐트가 차등 백업에 포함됩니다.

differential_base_guid

uniqueidentifier

차등 백업의 기반이 되는 기준 백업의 고유 식별자입니다.

differential_base_time

datetime

differential_base_lsn에 해당하는 시간입니다.

redo_start_lsn

numeric(25,0)

다음 롤포워드가 시작되어야 하는 시점의 LSN입니다.

state = RESTORING 또는 state = RECOVERY_PENDING이 아니면 NULL입니다.

redo_start_fork_guid

uniqueidentifier

복구 분기 지점의 고유 식별자입니다. 복원된 다음 로그 백업의 first_fork_guid는 이 값과 일치해야 합니다. 파일의 현재 상태를 나타냅니다.

redo_target_lsn

numeric(25,0)

이 파일에 대한 온라인 롤포워드를 중지할 수 있는 시점의 LSN입니다.

state = RESTORING 또는 state = RECOVERY_PENDING이 아니면 NULL입니다.

redo_target_fork_guid

uniqueidentifier

파일을 복구할 수 있는 복구 분기 지점입니다. redo_target_lsn과 쌍을 이룹니다.

backup_lsn

numeric(25,0)

파일의 가장 최근 데이터 또는 차등 백업의 LSN입니다.

[!참고]

큰 인덱스를 삭제하거나 다시 작성할 때 또는 큰 테이블을 삭제하거나 자를 때 데이터베이스 엔진은 트랜잭션이 커밋될 때까지 실제 페이지 할당 취소 및 관련 잠금을 연기합니다. 삭제 작업이 지연되어도 할당된 공간이 즉시 해제되지는 않습니다. 따라서 큰 개체를 삭제하거나 자른 직후에 sys.database_files에서 반환하는 값에는 사용 가능한 실제 디스크 공간이 반영되지 않을 수도 있습니다.

사용 권한

public 역할의 멤버 자격이 필요합니다. 자세한 내용은 메타데이터 표시 유형 구성을 참조하십시오.

참고 항목

참조

데이터베이스 및 파일 카탈로그 뷰(Transact-SQL)

sys.databases(Transact-SQL)

sys.master_files(Transact-SQL)

sys.data_spaces(Transact-SQL)

개념

파일 상태

데이터베이스 파일 및 파일 그룹