Pernyataan RESTORE - HEADERONLY (Transact-SQL)
Berlaku untuk: SQL Server Azure SQL Managed Instance
Mengembalikan kumpulan hasil yang berisi semua informasi header cadangan untuk semua set cadangan pada perangkat cadangan tertentu di SQL Server.
Catatan
Untuk deskripsi argumen, lihat RESTORE Arguments (Transact-SQL).
Sintaksis
RESTORE HEADERONLY
FROM <backup_device>
[ WITH
{
-- Backup set options
FILE = { backup_set_file_number | @backup_set_file_number }
| PASSWORD = { password | @password_variable }
| [ METADATA_ONLY | SNAPSHOT ] [ DBNAME = { database_name | @database_name_variable } ]
-- Media set options
| MEDIANAME = { media_name | @media_name_variable }
| MEDIAPASSWORD = { mediapassword | @mediapassword_variable }
-- Error management options
| { CHECKSUM | NO_CHECKSUM }
| { STOP_ON_ERROR | CONTINUE_AFTER_ERROR }
-- Tape options
| { REWIND | NOREWIND }
| { UNLOAD | NOUNLOAD }
} [ , ...n ]
]
[ ; ]
<backup_device> ::=
{
{ logical_backup_device_name |
@logical_backup_device_name_var }
| { DISK | TAPE | URL } = { 'physical_backup_device_name' |
@physical_backup_device_name_var }
}
Catatan
URL
adalah format yang digunakan untuk menentukan lokasi dan nama file untuk Azure Blob Storage dan didukung dimulai dengan SQL Server 2012 (11.x) SP 1 CU 2. Meskipun penyimpanan Azure adalah layanan, implementasinya mirip dengan disk dan pita, untuk memungkinkan pengalaman pemulihan yang konsisten dan mulus untuk ketiga perangkat tersebut.
Argumen
Untuk deskripsi RESTORE HEADERONLY
argumen, lihat RESTORE Arguments (Transact-SQL).
Tataan hasil
Untuk setiap cadangan pada perangkat tertentu, server mengirim baris informasi header dengan kolom berikut:
Nama kolom | Jenis Data | Deskripsi untuk set cadangan SQL Server |
---|---|---|
BackupName 1 |
nvarchar(128) | Nama kumpulan cadangan. |
BackupDescription |
nvarchar(255) | Deskripsi kumpulan cadangan. Bisa NULL. |
BackupType |
smallint | Jenis cadangan: 1 = Database 2 = Log transaksi 4 = File 5 = Database diferensial 6 = File diferensial 7 = Parsial 8 = Parsial diferensial |
ExpirationDate |
datetime | Tanggal kedaluwarsa untuk kumpulan cadangan. |
Compressed |
bit | Apakah set cadangan dikompresi menggunakan kompresi berbasis perangkat lunak: 0 = Tidak 1 = Ya |
Position |
smallint | Posisi set cadangan dalam volume (untuk digunakan dengan opsi FILE = ). |
DeviceType |
kecil | Nomor yang sesuai dengan perangkat yang digunakan untuk operasi pencadangan. Diska: - 2 = Logis - 102 = Fisik Tape: - 5 = Logis - 105 = Fisik Perangkat Virtual: - 7 = Logis - 107 = Fisik URL: - 9 = Logis - 109 = Fisik Nama perangkat logis dan nomor perangkat ada di sys.backup_devices . Untuk informasi selengkapnya, lihat sys.backup_devices. |
UserName |
nvarchar(128) | Nama pengguna yang melakukan operasi pencadangan. |
ServerName |
nvarchar(128) | Nama server yang menulis kumpulan cadangan. |
DatabaseName |
nvarchar(128) | Nama database yang dicadangkan. |
DatabaseVersion |
int | Versi database tempat cadangan dibuat. |
DatabaseCreationDate |
datetime | Tanggal dan waktu database dibuat. |
BackupSize |
numerik(20,0) | Ukuran cadangan, dalam byte. |
FirstLSN |
numerik(25,0) | Nomor urutan log dari catatan log pertama dalam kumpulan cadangan. |
LastLSN |
numerik(25,0) | Nomor urutan log catatan berikutnya setelah kumpulan cadangan. |
CheckpointLSN |
numerik(25,0) | Nomor urutan log dari titik pemeriksaan terbaru pada saat cadangan dibuat. |
DatabaseBackupLSN |
numerik(25,0) | Nomor urutan log dari cadangan database lengkap terbaru.DatabaseBackupLSN adalah "awal titik pemeriksaan" yang dipicu ketika pencadangan dimulai. LSN ini bertepatan dengan FirstLSN jika cadangan diambil ketika database diam dan tidak ada replikasi yang dikonfigurasi. |
BackupStartDate |
datetime | Tanggal dan waktu operasi pencadangan dimulai. |
BackupFinishDate |
datetime | Tanggal dan waktu operasi pencadangan selesai. |
SortOrder |
smallint | Urutan pengurutan server. Kolom ini hanya valid untuk pencadangan database. Disediakan untuk kompatibilitas mundur. |
CodePage |
smallint | Halaman kode server atau set karakter yang digunakan oleh server. |
UnicodeLocaleId |
int | Opsi konfigurasi ID lokal Unicode Server yang digunakan untuk pengurutan data karakter Unicode. Disediakan untuk kompatibilitas mundur. |
UnicodeComparisonStyle |
int | Opsi konfigurasi gaya perbandingan Server Unicode, yang menyediakan kontrol tambahan atas pengurutan data Unicode. Disediakan untuk kompatibilitas mundur. |
CompatibilityLevel |
kecil | Pengaturan tingkat kompatibilitas database tempat cadangan dibuat. |
SoftwareVendorId |
int | Nomor identifikasi vendor perangkat lunak. Untuk SQL Server, angka ini adalah 4608 (atau heksadesimal 0x1200 ). |
SoftwareVersionMajor |
int | Nomor versi utama server yang membuat kumpulan cadangan. |
SoftwareVersionMinor |
int | Nomor versi minor server yang membuat kumpulan cadangan. |
SoftwareVersionBuild |
int | Nomor build server yang membuat kumpulan cadangan. |
MachineName |
nvarchar(128) | Nama komputer yang melakukan operasi pencadangan. |
Flags |
int | Arti bit bendera individual: - 1 = Pencadangan log berisi operasi yang dicatat secara massal. - 2 = Pencadangan rekam jepret. - 4 = Database bersifat baca-saja saat dicadangkan. - 8 = Database berada dalam mode pengguna tunggal saat dicadangkan. - 16 = Cadangan berisi checksum cadangan. - 32 = Database rusak ketika dicadangkan, tetapi operasi pencadangan diminta untuk melanjutkan meskipun ada kesalahan. - 64 = Pencadangan log ekor. - 128 = Pencadangan log ekor dengan metadata yang tidak lengkap. - 256 = Pencadangan log ekor dengan NORECOVERY. Penting: Kami menyarankan agar alih-alih Flags Anda menggunakan kolom Boolean individual (dimulai dengan HasBulkLoggedData dan diakhir dengan IsCopyOnly dalam tabel ini). |
BindingID |
pengidentifikasi unik | ID pengikatan untuk database. Nilai ini sesuai dengan database_guid di sys.database_recovery_status . Saat database dipulihkan, nilai baru ditetapkan. FamilyGUID Lihat juga . |
RecoveryForkID |
pengidentifikasi unik | ID untuk fork pemulihan akhir. Kolom ini sesuai dengan last_recovery_fork_guid dalam tabel set cadangan.Untuk pencadangan data, RecoveryForkID sama dengan FirstRecoveryForkID . |
Collation |
nvarchar(128) | Kolasasi yang digunakan oleh database. |
FamilyGUID |
pengidentifikasi unik | ID database asli saat dibuat. Nilai ini tetap sama ketika database dipulihkan. |
HasBulkLoggedData |
bit | 1 = Pencadangan log yang berisi operasi yang dicatat secara massal. |
IsSnapshot |
bit | 1 = Pencadangan rekam jepret. |
IsReadOnly |
bit | 1 = Database bersifat baca-saja saat dicadangkan. |
IsSingleUser |
bit | 1 = Database adalah pengguna tunggal saat dicadangkan. |
HasBackupChecksums |
bit | 1 = Cadangan berisi checksum cadangan. |
IsDamaged |
bit | 1 = Database rusak ketika dicadangkan, tetapi operasi pencadangan diminta untuk melanjutkan meskipun ada kesalahan. |
BeginsLogChain |
bit | 1 = Ini adalah yang pertama dalam rantai cadangan log berkelanjutan. Rantai log dimulai dengan cadangan log pertama yang diambil setelah database dibuat atau ketika dialihkan dari model pemulihan Sederhana ke Penuh atau Dicatat Massal. |
HasIncompleteMetaData |
bit | 1 = Cadangan log ekor dengan metadata yang tidak lengkap. Untuk informasi tentang pencadangan tail-log dengan metadata cadangan yang tidak lengkap, lihat Tail-Log Backups (SQL Server). |
IsForceOffline |
bit | 1 = Cadangan yang diambil dengan NORECOVERY; database diambil secara offline oleh cadangan. |
IsCopyOnly |
bit | 1 = Cadangan khusus salinan. Pencadangan khusus salinan tidak memengaruhi prosedur pencadangan dan pemulihan keseluruhan untuk database. Untuk informasi selengkapnya, lihat Pencadangan Khusus Salin (SQL Server). |
FirstRecoveryForkID |
pengidentifikasi unik | ID untuk fork pemulihan awal. Kolom ini sesuai dengan first_recovery_fork_guid dalam tabel set cadangan.Untuk pencadangan data, FirstRecoveryForkID sama dengan RecoveryForkID . |
ForkPointLSN |
numerik(25,0) | Jika FirstRecoveryForkID tidak sama dengan RecoveryForkID , nilai ini adalah nomor urutan log dari titik fork. Jika tidak, nilai ini adalah NULL. |
RecoveryModel |
nvarchar(60) | Model pemulihan untuk database, salah satu dari: -PENUH - DICATAT MASSAL -SEDERHANA |
DifferentialBaseLSN |
numerik(25,0) | Untuk cadangan diferensial berbasis tunggal, nilainya sama dengan FirstLSN basis diferensial. Perubahan dengan LSN yang lebih besar dari atau sama dengan DifferentialBaseLSN disertakan dalam diferensial.Untuk diferensial berbasis multi, nilainya adalah NULL, dan LSN dasar harus ditentukan pada tingkat file. Untuk informasi selengkapnya, lihat MEMULIHKAN FILELISTONLY. Untuk jenis cadangan non-diferensial, nilainya selalu NULL. Untuk informasi selengkapnya, lihat Pencadangan Diferensial (SQL Server). |
DifferentialBaseGUID |
pengidentifikasi unik | Untuk cadangan diferensial berbasis tunggal, nilainya adalah pengidentifikasi unik dari basis diferensial. Untuk diferensial berbasis multi, nilainya adalah NULL, dan basis diferensial harus ditentukan per file. Untuk jenis cadangan non-diferensial, nilainya adalah NULL. |
BackupTypeDescription |
nvarchar(60) | Jenis cadangan sebagai string, salah satu dari: -BASIS DATA - LOG TRANSAKSI - FILE ATAU GRUP FILE - DIFERENSIAL DATABASE - FILE DIFERENSIAL PARSIAL - DIFERENSIAL PARSIAL |
BackupSetGUID |
pengidentifikasi unik | Nomor identifikasi unik dari kumpulan cadangan, yang diidentifikasi di media. Bisa NULL. |
CompressedBackupSize |
bigint | Jumlah byte dari kumpulan cadangan. Untuk cadangan yang tidak dikompresi, nilai ini sama BackupSize dengan .Untuk menghitung rasio kompresi, gunakan CompressedBackupSize dan BackupSize .msdb Selama peningkatan, nilai ini diatur agar sesuai dengan nilai BackupSize kolom. |
containment |
kecil | Berlaku untuk: SQL Server 2012 (11.x) dan versi yang lebih baru. Menunjukkan status penahanan database. 0 = penahanan database nonaktif 1 = database berada dalam penahanan parsial |
KeyAlgorithm |
nvarchar(32) | Berlaku untuk: SQL Server 2014 (12.x) CU 1 dan versi yang lebih baru. Algoritma enkripsi yang digunakan untuk mengenkripsi cadangan. NO_Encryption menunjukkan bahwa cadangan tidak dienkripsi. Ketika nilai yang benar tidak dapat ditentukan, nilainya harus NULL. |
EncryptorThumbprint |
varbinary(20) | Berlaku untuk: SQL Server 2014 (12.x) CU 1 dan versi yang lebih baru. Thumbprint enkripsi yang dapat digunakan untuk menemukan sertifikat atau kunci asimetris dalam database. Ketika cadangan tidak dienkripsi, nilai ini adalah NULL. |
EncryptorType |
nvarchar(32) | Berlaku untuk: SQL Server 2014 (12.x) CU 1 dan versi yang lebih baru. Jenis enkripsi yang digunakan: Sertifikat atau Kunci Asimetris. Ketika cadangan tidak dienkripsi, nilai ini adalah NULL. |
LastValidRestoreTime |
datetime | Berlaku untuk: SQL Server 2022 (16.x) dan versi yang lebih baru. Waktu pemulihan terakhir yang valid. |
TimeZone |
nvarchar(32) | Berlaku untuk: SQL Server 2022 (16.x) dan versi yang lebih baru. Zona waktu server tempat cadangan diambil. |
CompressionAlgorithm |
nvarchar(32) | Berlaku untuk: SQL Server 2022 (16.x) dan versi yang lebih baru. Mengidentifikasi algoritma kompresi yang digunakan untuk mengompresi file cadangan. Defaultnya adalah MS_XPRESS. Untuk informasi selengkapnya, lihat BACKUP. |
1 Jika kata sandi ditentukan untuk kumpulan cadangan, RESTORE HEADERONLY
tampilkan informasi lengkap hanya untuk kumpulan cadangan yang kata sandinya cocok dengan opsi perintah yang ditentukan PASSWORD
. RESTORE HEADERONLY
juga menunjukkan informasi lengkap untuk kumpulan cadangan yang tidak terlindungi. Kolom BackupName
untuk kumpulan cadangan lain yang dilindungi kata sandi pada media diatur ke 'Password Protected'
, dan semua kolom lainnya adalah NULL.
Keterangan
Klien dapat menggunakan RESTORE HEADERONLY
untuk mengambil semua informasi header cadangan untuk semua cadangan pada perangkat cadangan tertentu. Untuk setiap cadangan pada perangkat cadangan, server mengirimkan informasi header sebagai baris.
RESTORE HEADERONLY
melihat semua set cadangan pada media. Oleh karena itu, menghasilkan hasil ini diatur saat menggunakan drive pita kapasitas tinggi dapat memakan waktu. Untuk melihat sekilas media tanpa mendapatkan informasi tentang setiap kumpulan cadangan, gunakan RESTORE LABELONLY
atau tentukan FILE = <backup_set_file_number>
.
Karena sifat Format Pita Microsoft, dimungkinkan untuk set cadangan dari program perangkat lunak lain untuk menempati ruang pada media yang sama dengan set cadangan SQL Server. Tataan hasil yang dikembalikan dengan RESTORE HEADERONLY
menyertakan baris untuk masing-masing kumpulan cadangan lainnya ini.
Keamanan
Operasi pencadangan dapat secara opsional menentukan kata sandi untuk set media, set cadangan, atau keduanya. Ketika kata sandi telah ditentukan pada set media atau set cadangan, Anda harus menentukan kata sandi atau kata sandi yang benar dalam pernyataan RESTORE. Kata sandi ini mencegah operasi pemulihan yang tidak sah dan penambung set cadangan yang tidak sah ke media menggunakan alat SQL Server. Namun, kata sandi tidak mencegah timpa media menggunakan opsi FORMAT pernyataan BACKUP.
Penting
Perlindungan yang diberikan oleh kata sandi ini lemah. Ini dimaksudkan untuk mencegah pemulihan yang salah menggunakan alat SQL Server oleh pengguna yang berwenang atau tidak sah. Ini tidak mencegah pembacaan data cadangan dengan cara lain atau penggantian kata sandi. Fitur ini akan dihapus dalam versi SQL Server yang akan datang. Hindari menggunakan fitur ini dalam pekerjaan pengembangan baru, dan rencanakan untuk memodifikasi aplikasi yang saat ini menggunakan fitur ini. Praktik terbaik untuk melindungi cadangan adalah menyimpan pita cadangan di lokasi yang aman atau mencadangkan ke file disk yang dilindungi oleh daftar kontrol akses (ACL) yang memadai. ACL harus diatur pada akar direktori tempat cadangan dibuat.
Izin
Mendapatkan informasi tentang set cadangan atau perangkat cadangan memerlukan izin CREATE DATABASE. Untuk informasi selengkapnya, lihat IZIN GRANT Database (Transact-SQL).
Contoh
Contoh berikut mengembalikan informasi di header untuk file C:\AdventureWorks-FullBackup.bak
disk .
RESTORE HEADERONLY
FROM DISK = N'C:\AdventureWorks-FullBackup.bak';
GO
Lihat juga
- BACKUP (Transact-SQL)
- backupset (Transact-SQL)
- PULIHKAN REWINDONLY (Transact-SQL)
- PULIHKAN SECARA VERIFIKASI (Transact-SQL)
- RESTORE (Transact-SQL)
- Riwayat Pencadangan dan Informasi Header (SQL Server)
- Mengaktifkan atau Menonaktifkan Checksum Cadangan Selama Pencadangan atau Pemulihan (SQL Server)
- Set Media, Keluarga Media, dan Kumpulan Cadangan (SQL Server)
- Model Pemulihan (SQL Server)