sys.database_files(Transact-SQL)
데이터베이스 자체에 저장되어 있는 각 데이터베이스 파일당 한 개의 행을 포함합니다. 이 뷰는 데이터베이스별 뷰입니다.
열 이름
데이터 형식
설명
file_id
int
데이터베이스 내 파일의 ID입니다.
file_guid
uniqueidentifier
파일에 대한 GUID입니다.
NULL = 데이터베이스가 이전 버전의 Microsoft SQL Server에서 업그레이드되었습니다.
type
tinyint
파일 유형입니다.
0 = 행
1 = 로그
2 = 나중에 사용하도록 예약되었습니다.
3 = 나중에 사용하도록 예약되었습니다.
4 = 전체 텍스트
type_desc
nvarchar(60)
파일 유형에 대한 설명입니다.
ROWS
LOG
FULLTEXT
data_space_id
int
이 파일이 속한 데이터 공간의 ID입니다. 데이터 공간은 파일 그룹입니다.
0 = 로그 파일
name
sysname
데이터베이스에서 파일의 논리적 이름입니다.
physical_name
nvarchar(260)
운영 체제 파일 이름입니다.
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는 스냅숏이 파일용으로 사용할 수 있는 최대 공간을 나타냅니다.
max_size
int
8KB 페이지 단위로 나타낸 파일의 최대 크기입니다.
0 = 증가를 허용하지 않습니다.
-1 = 디스크가 꽉 찰 때까지 파일이 증가합니다.
268435456 = 로그 파일은 최대 2TB 크기까지 증가합니다.
참고:
로그 파일 크기 제한 없이 업그레이드된 데이터베이스는 로그 파일이 최대 크기가 되면 -1을 보고합니다.
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 = 스파스 파일이 아닙니다.
자세한 내용은 데이터베이스 스냅숏의 스파스 파일 크기 이해를 참조하십시오.
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에서 반환한 값은 실제 사용할 수 있는 디스크 공간과 다를 수 있습니다. 지연된 할당에 대한 자세한 내용은 큰 개체 삭제 및 다시 작성을 참조하십시오.
참고 항목
참조
데이터베이스 및 파일 카탈로그 뷰(Transact-SQL)
sys.databases(Transact-SQL)
sys.master_files(Transact-SQL)
sys.data_spaces(Transact-SQL)