Bagikan melalui


Pemulihan File (Model Pemulihan Penuh)

Berlaku untuk: SQL Server

Topik ini hanya relevan untuk database yang berisi beberapa file atau grup file di bawah model pemulihan beban penuh atau massal.

Dalam pemulihan file, tujuannya adalah memulihkan satu atau beberapa file yang rusak tanpa memulihkan seluruh database. Skenario pemulihan file terdiri dari satu urutan pemulihan yang menyalin, meneruskan, dan memulihkan data yang sesuai

Jika grup file yang sedang dipulihkan adalah baca/tulis, rantai cadangan log yang tidak terputus harus diterapkan setelah data terakhir atau cadangan diferensial dipulihkan. Ini membawa grup file diteruskan ke rekaman log dalam rekaman log aktif saat ini dalam file log. Titik pemulihan biasanya berada di dekat akhir log, tetapi belum tentu.

Jika grup file yang sedang dipulihkan bersifat baca-saja, biasanya menerapkan pencadangan log tidak perlu dan dilewati. Jika cadangan diambil setelah file menjadi baca-saja, itu adalah cadangan terakhir yang dipulihkan. Roll forward berhenti pada titik target.

Skenario pemulihan file adalah sebagai berikut:

  • Pemulihan file offline

    Dalam pemulihan file offline, database sedang offline saat file atau grup file yang rusak dipulihkan. Di akhir urutan pemulihan, database online.

    Semua edisi SQL Server mendukung pemulihan file offline.

  • Pemulihan file online

    Dalam pemulihan file online, jika database online pada waktu pemulihan, database tetap online selama pemulihan file. Namun, setiap grup file tempat file sedang dipulihkan sedang offline selama operasi pemulihan. Setelah semua file dalam grup file offline dipulihkan, grup file secara otomatis dibawa online.

    Untuk informasi tentang dukungan untuk halaman online dan pemulihan file, lihat Edisi dan fitur SQL Server 2022 yang didukung. Untuk informasi selengkapnya tentang pemulihan online, lihat Pemulihan Online (SQL Server).

    Tip

    Jika Anda ingin database offline untuk pemulihan file, ambil database offline sebelum Anda memulai urutan pemulihan dengan menjalankan pernyataan ALTER DATABASE berikut: UBAH DATABASE database_name ATUR OFFLINE.

Memulihkan File yang Rusak dari Cadangan File

  1. Sebelum memulihkan satu atau beberapa file yang rusak, coba buat cadangan log ekor.

    Jika log telah rusak, cadangan log ekor tidak dapat dibuat, dan Anda harus memulihkan seluruh database.

    Untuk informasi tentang cara mencadangkan log transaksi, lihat Pencadangan Log Transaksi (SQL Server).

    Penting

    Untuk pemulihan file offline, Anda harus selalu mengambil cadangan log ekor sebelum pemulihan file. Untuk pemulihan file online, Anda harus selalu mengambil cadangan log setelah pemulihan file. Pencadangan log ini diperlukan untuk memungkinkan file dipulihkan ke status yang konsisten dengan database lainnya.

  2. Pulihkan setiap file yang rusak dari cadangan file terbaru dari file tersebut.

  3. Pulihkan cadangan file diferensial terbaru, jika ada, untuk setiap file yang dipulihkan.

  4. Pulihkan pencadangan log transaksi secara berurutan, dimulai dengan cadangan yang mencakup file terlama yang dipulihkan dan diakhiri dengan cadangan tail-log yang dibuat di langkah 1.

    Anda harus memulihkan cadangan log transaksi yang dibuat setelah pencadangan file untuk membawa database ke status yang konsisten. Cadangan log transaksi dapat digulirkan ke depan dengan cepat, karena hanya perubahan yang berlaku untuk file yang dipulihkan yang diterapkan. Memulihkan file individual bisa lebih baik daripada memulihkan seluruh database, karena file yang tidak rusak tidak disalin dan kemudian digulung maju. Namun, seluruh rantai cadangan log masih harus dibaca.

  5. Pulihkan database.

Catatan

Pencadangan file dapat digunakan untuk memulihkan database ke titik waktu sebelumnya. Untuk melakukan ini, Anda harus memulihkan sekumpulan cadangan file lengkap, lalu memulihkan cadangan log transaksi secara berurutan untuk mencapai titik target yang setelah akhir pencadangan file yang dipulihkan terbaru. Untuk informasi selengkapnya tentang pemulihan point-in-time, lihat Memulihkan Database SQL Server ke Titik Waktu (Model Pemulihan Penuh).

Urutan Pemulihan Transact-SQL untuk Pemulihan File Offline (Model Pemulihan Penuh)

Skenario pemulihan file terdiri dari satu urutan pemulihan yang menyalin, menggulung maju, dan memulihkan data yang sesuai.

Bagian ini memperlihatkan opsi RESTORE penting untuk urutan pemulihan file. Sintaks dan detail yang tidak relevan dengan tujuan ini dihilangkan.

Urutan pemulihan sampel berikut menunjukkan pemulihan offline dua file sekunder, dan B, A menggunakan WITH NORECOVERY. Selanjutnya, dua cadangan log diterapkan dengan NORECOVERY, diikuti dengan cadangan log ekor, dan ini dipulihkan menggunakan WITH RECOVERY.

Catatan

Contoh urutan pemulihan berikut dimulai dengan mengambil file offline lalu membuat cadangan log ekor.

--Take the file offline.  
ALTER DATABASE database_name MODIFY FILE SET OFFLINE;  
-- Back up the currently active transaction log.  
BACKUP LOG database_name  
   TO <tail_log_backup>  
   WITH NORECOVERY;  
GO   
-- Restore the files.  
RESTORE DATABASE database_name FILE=name   
   FROM <file_backup_of_file_A>   
   WITH NORECOVERY;  
RESTORE DATABASE database_name FILE=<name> ......  
   FROM <file_backup_of_file_B>   
   WITH NORECOVERY;  
-- Restore the log backups.  
RESTORE LOG database_name FROM <log_backup>   
   WITH NORECOVERY;  
RESTORE LOG database_name FROM <log_backup>   
   WITH NORECOVERY;  
RESTORE LOG database_name FROM <tail_log_backup>   
   WITH RECOVERY;  

Contoh

Tugas Terkait

Untuk memulihkan file dan grup file

Lihat Juga

Pencadangan dan Pemulihan: Interoperabilitas dan Koeksistensi (SQL Server)
Pencadangan Diferensial (SQL Server)
Pencadangan File Lengkap (SQL Server)
Gambaran Umum Pencadangan (SQL Server)
Gambaran Umum Pengembalian dan Pemulihan (SQL Server)
RESTORE (Transact-SQL)
Pemulihan Database Lengkap (Model Pemulihan Sederhana)
Pemulihan Piecemeal (SQL Server)