RESTORE HEADERONLY(Transact-SQL)
특정 백업 장치의 모든 백업 세트에 대한 백업 헤더 정보를 모두 포함하는 결과 집합을 반환합니다.
[!참고] 인수에 대한 설명은 RESTORE 인수(Transact-SQL)를 참조하십시오.
구문
RESTORE HEADERONLY
FROM <backup_device>
[ WITH
[ { CHECKSUM | NO_CHECKSUM } ]
[ [ , ] { CONTINUE_AFTER_ERROR | STOP_ON_ERROR } ]
[ [ , ] FILE = backup_set_file_number ]
[ [ , ] MEDIANAME = { media_name | @media_name_variable } ]
[ [ , ] MEDIAPASSWORD = { mediapassword |
@mediapassword_variable } ]
[ [ , ] PASSWORD = { password | @password_variable } ]
[ [ , ] REWIND ]
[ [ , ] { UNLOAD | NOUNLOAD } ]
]
[;]
<backup_device> ::=
{
{ logical_backup_device_name |
@logical_backup_device_name_var }
| { DISK | TAPE } = { 'physical_backup_device_name' |
@physical_backup_device_name_var }
}
인수
RESTORE HEADERONLY 인수에 대한 설명은 RESTORE 인수(Transact-SQL)를 참조하십시오.
결과 집합
지정한 장치의 각 백업에 대해 서버는 다음 열을 가진 헤더 정보 행을 보냅니다.
[!참고] RESTORE HEADERONLY는 미디어에 있는 모든 백업 세트를 확인합니다. 따라서 고용량 테이프 드라이브를 사용할 때 이 결과 집합을 생성하면 시간이 오래 걸릴 수 있습니다. 모든 백업 세트에 대한 정보를 가져오지 않고 미디어를 신속하게 확인하려면 RESTORE LABELONLY를 사용하거나 FILE =backup_set_file_number를 지정합니다.
[!참고] Microsoft Tape Format의 특성 때문에 다른 소프트웨어 프로그램의 백업 세트가 Microsoft SQL Server 백업 세트와 동일한 크기의 미디어의 공간을 차지할 수 있습니다. RESTORE HEADERONLY에서 반환한 결과 집합에는 각각의 다른 백업 세트에 대한 행이 포함되어 있습니다.
열 이름
데이터 형식
SQL Server 백업 세트에 대한 설명
다른 백업 세트에 대한 설명
BackupName
nvarchar(128)
백업 세트 이름
데이터 세트 이름
BackupDescription
nvarchar(255)
백업 세트 설명
데이터 세트 설명
BackupType
smallint
백업 유형
1 = 데이터베이스
2 = 트랜잭션 로그
4 = 파일
5 = 차등 데이터베이스
6 = 차등 파일
7 = 부분
8 = 차등 부분
백업 유형
1 = 보통
5 = 차등
16 = 증분
17 = 매일
ExpirationDate
datetime
백업 세트에 대한 만료 일자
NULL
Compressed
tinyint
0 = 아니요. SQL Server에서는 소프트웨어 압축을 지원하지 않습니다.
소프트웨어 기반 압축을 사용하여 백업 세트를 압축했는지 여부
1 = 예
0 = 아니요
Position
smallint
볼륨에 있는 백업 세트의 위치(FILE = 옵션과 함께 사용)
볼륨에 있는 백업 세트의 위치
DeviceType
tinyint
백업 작업에 사용된 장치 번호
디스크
2 = 논리적
102 = 물리적
테이프
5 = 논리적
105 = 물리적
가상 장치
7 = 논리적
107 = 물리적
논리적 장치 이름과 장치 번호는 sys.backup_devices에 있습니다. 자세한 내용은 sys.backup_devices(Transact-SQL)를 참조하십시오.
NULL
UserName
nvarchar(128)
백업 작업을 수행한 사용자 이름
백업 작업을 수행한 사용자 이름
ServerName
nvarchar(128)
백업 세트를 작성한 서버 이름
NULL
DatabaseName
nvarchar(128)
백업한 데이터베이스 이름
NULL
DatabaseVersion
int
백업을 만든 데이터베이스의 버전
NULL
DatabaseCreationDate
datetime
데이터베이스를 만든 날짜와 시간
NULL
BackupSize
numeric(20,0)
바이트 단위의 백업 크기
NULL
FirstLSN
numeric(25,0)
백업 세트에 있는 첫 번째 로그 레코드의 로그 시퀀스 번호입니다.
NULL
LastLSN
numeric(25,0)
백업 세트 다음에 오는 로그 레코드의 로그 시퀀스 번호입니다.
NULL
CheckpointLSN
numeric(25,0)
백업을 만들 때 가장 최근 검사점의 로그 시퀀스 번호.
NULL
DatabaseBackupLSN
numeric(25,0)
가장 최근의 전체 데이터베이스 백업의 로그 시퀀스 번호입니다.
DatabaseBackupLSN은 백업이 시작될 때 트리거되는 "검사점의 시작"입니다. 데이터베이스가 유휴 상태이고 복제가 구성되지 않은 경우 백업이 수행되면 이 LSN은 FirstLSN과 일치하게 됩니다.
NULL
BackupStartDate
datetime
백업 작업이 시작된 날짜와 시간
미디어 기록 날짜
BackupFinishDate
datetime
백업 작업이 완료된 날짜와 시간
미디어 기록 날짜
SortOrder
smallint
서버 정렬 순서. 이 열은 데이터베이스 백업에만 유효하고 이전 버전과의 호환성을 위해 제공됩니다.
NULL
CodePage
smallint
서버 코드 페이지 또는 서버에서 사용한 문자 집합
NULL
UnicodeLocaleId
int
유니코드 문자 데이터 정렬에 사용한 서버 유니코드 로캘 ID 구성 옵션. 이전 버전과의 호환성을 위해 제공됩니다.
NULL
UnicodeComparisonStyle
int
유니코드 데이터 정렬에 대한 추가 제어를 제공하는 서버 유니코드 비교 스타일 구성 옵션. 이전 버전과의 호환성을 위해 제공됩니다.
NULL
CompatibilityLevel
tinyint
백업을 만들 데이터베이스의 호환성 수준 설정
NULL
SoftwareVendorId
int
소프트웨어 공급업체 ID. SQL Server의 경우 이 번호는 4608(또는 0x1200 16진수)입니다.
소프트웨어 공급업체 ID
SoftwareVersionMajor
int
백업 세트를 만든 서버의 주 버전 번호
백업 세트를 만든 소프트웨어의 주 버전 번호
SoftwareVersionMinor
int
백업 세트를 만든 서버의 부 버전 번호
백업 세트를 만든 소프트웨어의 부 버전 번호
SoftwareVersionBuild
int
백업 세트를 만든 서버의 빌드 번호
NULL
MachineName
nvarchar(128)
백업 작업을 수행한 컴퓨터의 이름
백업 작업을 수행한 컴퓨터의 유형
Flags
int
1로 설정된 경우 개별 플래그 비트의 의미는 다음과 같습니다.
1 = 로그 백업에 대량 로그 작업이 포함됩니다.
2 = 스냅숏 백업입니다.
4 = 데이터베이스가 읽기 전용으로 백업되었습니다.
8 = 데이터베이스가 단일 사용자 모드로 백업되었습니다.
16 =백업에 백업 체크섬을 포함합니다.
32 = 백업 시 데이터베이스가 손상되었으나 오류가 있더라도 백업 작업을 계속하도록 요청했습니다.
64 = 비상 로그 백업입니다.
128 = 메타데이터가 완전하지 않은 비상 로그 백업입니다.
256 = NORECOVERY 상태의 비상 로그 백업입니다.
중요:
Flags 대신 개별 Boolean 열을 사용하는 것이 좋습니다. 이 열은 아래의 HasBulkLoggedData부터 IsCopyOnly까지 나열되어 있습니다.
NULL
BindingID
uniqueidentifier
데이터베이스에 대한 바인딩 ID입니다. 이 열은 sys.databasesdatabase_guid에 해당됩니다. 데이터베이스를 복원하면 새 값이 할당됩니다. 아래의 FamilyGUID를 참조하십시오.
NULL
RecoveryForkID
uniqueidentifier
복구 분기 끝 지점의 ID입니다. 이 열은 backupset 테이블의 last_recovery_fork_guid에 해당됩니다.
데이터 백업의 경우 RecoveryForkID가 FirstRecoveryForkID와 동일합니다.
NULL
Collation
nvarchar(128)
데이터베이스에서 사용한 데이터 정렬
NULL
FamilyGUID
uniqueidentifier
생성된 원본 데이터베이스의 ID입니다. 이 값은 데이터베이스가 복구될 때와 동일하게 유지됩니다.
NULL
HasBulkLoggedData
bit
1 = 대량 로그 작업을 포함하는 로그 백업입니다.
NULL
IsSnapshot
bit
1 = 스냅숏 백업입니다.
NULL
IsReadOnly
bit
1 = 데이터베이스가 읽기 전용으로 백업되었습니다.
NULL
IsSingleUser
bit
1 = 데이터베이스가 단일 사용자 모드로 백업되었습니다.
NULL
HasBackupChecksums
bit
1 =백업에 백업 체크섬을 포함합니다.
NULL
IsDamaged
bit
1 = 백업 시 데이터베이스가 손상되었으나 오류가 있더라도 백업 작업을 계속하도록 요청했습니다.
NULL
BeginsLogChain
bit
1 = 연속되는 로그 백업 체인에서 첫 번째 체인입니다. 로그 체인은 데이터베이스가 생성된 후 또는 단순 복구 모델에서 전체 또는 대량 로그 복구 모델로 전환될 때 수행된 첫 번째 로그 백업에서 시작됩니다.
NULL
HasIncompleteMetaData
bit
1 = 메타데이터가 완전하지 않은 비상 로그 백업입니다.
백업 메타데이터가 완전하지 않은 비상 로그 백업에 대한 자세한 내용은 비상 로그 백업를 참조하십시오.
NULL
IsForceOffline
bit
1 = NORECOVERY 옵션으로 수행된 백업이며 데이터베이스는 백업에 의해 오프라인 상태가 됩니다.
NULL
IsCopyOnly
bit
1 = 복사 전용 백업입니다.
복사 전용 백업은 백업 전체에 영향을 주지 않고 데이터베이스에 대한 프로시저를 복원합니다. 자세한 내용은 복사 전용 백업을 참조하십시오.
NULL
FirstRecoveryForkID
uniqueidentifier
복구 분기 시작 지점의 ID입니다. 이 열은 backupset 테이블의 first_recovery_fork_guid에 해당됩니다.
데이터 백업의 경우 FirstRecoveryForkID가 RecoveryForkID와 동일합니다.
NULL
ForkPointLSN
numeric(25,0) NULL
FirstRecoveryForkID가 RecoveryForkID와 다른 경우 이 열은 분기 지점의 로그 시퀀스 번호입니다. 그렇지 않은 경우 이 값은 NULL입니다.
NULL
RecoveryModel
nvarchar(60)
데이터베이스의 복구 모델이며 다음 중 하나입니다.
FULL
BULK-LOGGED
SIMPLE
NULL
DifferentialBaseLSN
numeric(25,0) NULL
단일 백업을 기준으로 하는 차등 백업의 경우 이 값은 차등 기반의 FirstLSN과 같으며 DifferentialBaseLSN보다 크거나 같도록 LSN을 변경하면 차등 백업에 포함됩니다.
여러 백업을 기반으로 하는 차등 백업의 경우 값은 NULL이며 기본 LSN은 파일 수준에서 결정해야 합니다. 자세한 내용은 RESTORE FILELISTONLY(Transact-SQL)를 참조하십시오.
비 차등 백업 유형의 경우 값은 항상 NULL입니다.
자세한 내용은 차등 백업의 기반을 참조하십시오.
NULL
DifferentialBaseGUID
uniqueidentifier
단일 백업을 기준으로 하는 차등 백업의 경우 값은 차등 기반의 고유 식별자입니다.
여러 백업을 기반으로 하는 차등 백업의 경우 값은 NULL이며 기본 차등 백업은 파일 단위로 결정해야 합니다.
비 차등 백업 유형의 경우 값은 NULL입니다.
NULL
BackupTypeDescription
nvarchar(60)
백업 유형이 문자열인 경우 다음 중 하나입니다.
DATABASE
TRANSACTION LOG
FILE OR FILEGROUP
DATABASE DIFFERENTIAL
FILE DIFFERENTIAL PARTIAL
PARTIAL DIFFERENTIAL
백업 유형이 문자열인 경우 다음 중 하나입니다.
NORMAL
DIFFERENTIAL
INCREMENTAL
DAILY
BackupSetGUID
uniqueidentifier NULL
미디어에서 식별의 기준이 되는 백업 세트의 고유 ID입니다.
NULL
[!참고] 백업 세트에 대한 암호를 정의한 경우 RESTORE HEADERONLY는 명령의 지정한 PASSWORD 옵션과 일치하는 암호의 백업 세트에 대한 정보만 모두 표시합니다. RESTORE HEADERONLY는 보호되지 않은 백업 세트에 대한 정보도 모두 표시합니다. 암호로 보호된 미디어의 다른 백업 세트에 대한 BackupName 열은 '암호로 보호됨'으로 설정되고 다른 열은 모두 NULL이 됩니다.
주의
클라이언트는 RESTORE HEADERONLY를 사용하여 특정 백업 장치의 모든 백업에 대한 백업 헤더 정보를 모두 검색합니다. 서버는 백업 장치의 각 백업에 대한 헤더 정보를 행으로 보냅니다.
사용 권한
모든 사용자가 RESTORE HEADERONLY를 사용할 수 있습니다.
백업 작업은 미디어 세트, 백업 세트 또는 이 둘 모두에 대해 암호를 지정할 수 있습니다. 미디어 세트나 백업 세트에 암호가 정의되어 있는 경우 RESTORE 문에서 정확한 암호를 지정해야 합니다. 이러한 암호를 지정하면 Microsoft SQL Server 2005 도구를 사용하여 무단으로 복원 작업을 수행하거나 미디어에 백업 세트를 무단으로 추가하는 작업을 방지할 수 있습니다. 하지만 암호를 사용해도 BACKUP 문의 FORMAT 옵션을 사용하여 미디어를 덮어쓰는 작업은 수행됩니다.
보안 정보: |
---|
이 암호에 의한 보호 수준은 낮습니다. 권한 유무에 관계없이 사용자가 SQL Server 2005 도구를 사용하여 잘못된 복원을 수행하는 것을 방지합니다. 다른 수단을 사용한 백업 데이터 읽기나 암호 바꾸기를 방지하지는 않습니다. 백업을 보호하는 최상의 방법은 백업 테이프를 안전한 장소에 보관하거나 적합한 ACL(액세스 제어 목록)로 보호되는 디스크 파일에 백업하는 것입니다. ACL은 백업이 만들어지는 디렉터리 루트에 설정해야 합니다. |
예
다음 예에서는 디스크 파일 C:\AdventureWorks-FullBackup.bak
에 대한 헤더 정보를 반환합니다.
RESTORE HEADERONLY
FROM DISK = N'C:\AdventureWorks-FullBackup.bak'
WITH NOUNLOAD;
GO
참고 항목
참조
BACKUP(Transact-SQL)
backupset(Transact-SQL)
RESTORE REWINDONLY(Transact-SQL)
RESTORE VERIFYONLY(Transact-SQL)
RESTORE(Transact-SQL)
관련 자료
백업에 관한 정보 보기
차등 백업의 기반
방법: 체크섬 백업 설정 및 해제(Transact-SQL)
로그 시퀀스 번호 소개
로그 시퀀스 번호 및 복원 계획
미디어 세트, 미디어 패밀리 및 백업 세트
복구 모델 개요
복구 경로