파일 상태File States

SQL ServerSQL Server에서 데이터베이스 파일의 상태는 데이터베이스 상태와는 별도로 유지 관리됩니다.In SQL ServerSQL Server, the state of a database file is maintained independently from the state of the database. 파일은 항상 하나의 특정 상태에 있습니다. 예를 들어 ONLINE이나 OFFLINE 상태일 수 있습니다.A file is always in one specific state, such as ONLINE or OFFLINE. 파일의 현재 상태를 보려면 sys.master_files 또는 sys.database_files 카탈로그 뷰를 사용합니다.To view the current state of a file, use the sys.master_files or sys.database_files catalog view. 데이터베이스가 오프라인 상태일 경우 sys.master_files 카탈로그 뷰에서 파일 상태를 볼 수 있습니다.If the database is offline, the state of the files can be viewed from the sys.master_files catalog view.

파일 그룹의 파일 상태에 따라 전체 파일 그룹의 사용 가능 여부가 결정됩니다.The state of the files in a filegroup determines the availability of the whole filegroup. 파일 그룹을 사용하려면 파일 그룹 내의 모든 파일이 온라인 상태여야 합니다.For a filegroup to be available, all files within the filegroup must be online. 파일 그룹의 현재 상태를 보려면 sys.filegroups 카탈로그 뷰를 사용합니다.To view the current state of a filegroup, use the sys.filegroups catalog view. Transact-SQLTransact-SQL 문으로 오프라인 상태의 파일 그룹에 액세스하려고 하면 오류가 발생하여 실패합니다.If a filegroup is offline and you try to access the filegroup by a Transact-SQLTransact-SQL statement, it will fail with an error. 쿼리 최적화 프로그램에서 SELECT 문에 대한 쿼리 계획을 작성할 때 문이 성공하도록 오프라인 파일 그룹에 있는 비클러스터형 인덱스와 인덱싱된 뷰는 사용되지 않습니다.When the query optimizer builds query plans for SELECT statements, it avoids nonclustered indexes and indexed views that reside in offline filegroups, letting these statements to succeed. 그러나 오프라인 파일 그룹에 대상 테이블의 힙이나 클러스터형 인덱스가 있는 경우 SELECT 문은 실패합니다.However, if the offline filegroup contains the heap or clustered index of the target table, the SELECT statements fail. 오프라인 파일 그룹의 인덱스를 사용하여 테이블을 수정하는 INSERT, UPDATE 또는 DELETE 문도 실패합니다.Additionally, any INSERT, UPDATE, or DELETE statement that modifies a table with any index in an offline filegroup will fail.

파일 상태 정의File State Definitions

다음 표에서는 파일 상태를 정의합니다.The following table defines the file states.

StateState 정의Definition
ONLINEONLINE 모든 작업에 파일을 사용할 수 있습니다.The file is available for all operations. 데이터베이스가 온라인 상태일 경우 주 파일 그룹의 파일은 항상 온라인 상태입니다.Files in the primary filegroup are always online if the database itself is online. 주 파일 그룹의 파일이 온라인 상태가 아니면 데이터베이스가 온라인 상태가 아니고 보조 파일의 상태가 정의되어 있지 않은 것입니다.If a file in the primary filegroup is not online, the database is not online and the states of the secondary files are undefined.
OFFLINEOFFLINE 파일에 액세스할 수 없으며 디스크에 파일이 없을 수도 있습니다.The file is not available for access and may not be present on the disk. 명시적 사용자 동작으로 인해 파일이 오프라인 상태가 되면 추가 사용자 작업이 수행될 때까지 오프라인 상태로 있습니다.Files become offline by explicit user action and remain offline until additional user action is taken.

** 주의 *\* 파일이 손상되면 파일을 오프라인으로만 설정해야 합니다. 그러나 손상된 파일은 복원할 수 있습니다.** Caution *\* A file should only be set offline when the file is corrupted, but it can be restored. 오프라인으로 설정된 파일을 온라인으로 설정할 수 있는 유일한 방법은 백업에서 파일을 복원하는 것입니다.A file set to offline can only be set online by restoring the file from backup. 단일 파일 복원 방법은 RESTORE(Transact-SQL)를 참조하세요.For more information about restoring a single file, see RESTORE (Transact-SQL).
RESTORINGRESTORING 파일이 복원되고 있습니다.The file is being restored. 페이지 복원이 아닌 전체 파일에 영향을 주는 복원 명령으로 인해 파일이 복원 중 상태가 되어 복원이 완료되고 파일이 복구될 때까지 이 상태로 있습니다.Files enter the restoring state because of a restore command affecting the whole file, not just a page restore, and remain in this state until the restore is completed and the file is recovered.
RECOVERY PENDINGRECOVERY PENDING 파일 복구가 연기되었습니다.The recovery of the file has been postponed. 파일이 복원 및 복구되지 않는 증분 복원 프로세스로 인해 파일이 자동으로 복구 보류 상태가 됩니다.A file enters this state automatically because of a piecemeal restore process in which the file is not restored and recovered. 오류를 해결하고 복구 프로세스를 완료하기 위한 사용자의 추가적인 동작이 필요합니다.Additional action by the user is required to resolve the error and allow for the recovery process to be completed. 자세한 내용은 증분 복원(SQL Server)을 참조하세요.For more information, see Piecemeal Restores (SQL Server).
SUSPECTSUSPECT 온라인 복원 프로세스 중에 파일 복구가 실패했습니다.Recovery of the file failed during an online restore process. 파일이 주 파일 그룹에 속하면 데이터베이스도 주의 대상으로 표시됩니다.If the file is in the primary filegroup, the database is also marked as suspect. 파일이 주 파일 그룹이 아니면 해당 파일만 주의 대상 상태이고 데이터베이스는 계속 온라인 상태입니다.Otherwise, only the file is suspect and the database is still online.

다음 방법 중 하나를 사용하여 파일을 사용 가능하게 설정할 때까지 파일이 주의 대상 상태로 있습니다.The file will remain in the suspect state until it is made available by one of the following methods:

복원 및 복구Restore and recovery

DBCC CHECKDB에 REPAIR_ALLOW_DATA_LOSS 사용DBCC CHECKDB with REPAIR_ALLOW_DATA_LOSS
DEFUNCTDEFUNCT 온라인 상태가 아닐 때 파일이 삭제되었습니다.The file was dropped when it was not online. 오프라인 파일 그룹이 제거되면 파일 그룹의 모든 파일이 존재하지 않음 상태가 됩니다.All files in a filegroup become defunct when an offline filegroup is removed.

ALTER DATABASE(Transact-SQL)ALTER DATABASE (Transact-SQL)

데이터베이스 상태Database States

미러링 상태(SQL Server)Mirroring States (SQL Server)

DBCC CHECKDB(Transact-SQL)DBCC CHECKDB (Transact-SQL)

데이터베이스 파일 및 파일 그룹Database Files and Filegroups