Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Berlaku untuk:SQL Server
Artikel ini hanya relevan untuk pencadangan dan pemulihan database SQL Server yang menggunakan model pemulihan penuh atau dicatat secara massal.
Pencadangan tail-log mencakup semua catatan log yang belum dicadangkan (bagian akhir log) untuk mencegah hilangnya pekerjaan dan menjaga rantai log tetap utuh. Sebelum Anda dapat memulihkan database SQL Server ke titik waktu terakhir, Anda harus mencadangkan bagian akhir log transaksinya. Cadangan log akhir adalah cadangan terakhir yang penting dalam rencana pemulihan untuk basis data.
Tidak semua skenario pemulihan memerlukan cadangan log ekor. Anda tidak memerlukan cadangan log ekor jika titik pemulihan terkandung dalam cadangan log sebelumnya. Cadangan log tail tidak diperlukan jika Anda memindahkan atau mengganti (menimpa) database, dan tidak perlu memulihkannya ke titik waktu tertentu setelah pencadangan terbarunya.
Skenario yang memerlukan pencadangan log transaksi terakhir
Kami menyarankan agar Anda membuat cadangan tail-log dalam skenario berikut:
Jika basis data dalam keadaan online dan Anda berencana melakukan operasi pemulihan pada basis data tersebut, mulailah dengan mencadangkan bagian akhir log. Untuk menghindari kesalahan pada database online, Anda harus menggunakan opsi
WITH NORECOVERYdari pernyataan Transact-SQL BACKUP.Jika basis data offline dan gagal dijalankan, serta Anda perlu memulihkan basis data tersebut, terlebih dahulu cadangkan bagian akhir log. Karena tidak ada transaksi yang dapat terjadi saat ini, gunakan
WITH NO_TRUNCATEopsi .NO_TRUNCATEsecara efektif sama dengan cadangan log transaksi khusus salinan. PenggunaanWITH NORECOVERYbersifat opsional, karena tidak ada transaksi yang dapat terjadi saat ini.Jika database rusak, cobalah membuat cadangan tail-log dengan menggunakan opsi
WITH CONTINUE_AFTER_ERRORdari pernyataanBACKUP.Pada basis data yang rusak, pencadangan bagian akhir log hanya dapat berhasil jika file log tidak rusak, basis data berada dalam keadaan yang mendukung pencadangan tail-log, dan basis data tidak berisi perubahan yang dicatat dengan model bulk-logged. Jika cadangan log ekor tidak dapat dibuat, transaksi apa pun yang dilakukan setelah pencadangan log terbaru hilang.
Tabel berikut merangkum opsi NORECOVERY, NO_TRUNCATE, dan CONTINUE_AFTER_ERROR untuk BACKUP.
| BACKUP Opsi LOG | Komentar |
|---|---|
NORECOVERY |
Gunakan NORECOVERY setiap kali Anda berniat untuk melanjutkan operasi pemulihan pada database.
NORECOVERY mengambil database ke dalam status pemulihan. Langkah ini menjamin bahwa database tidak berubah setelah pencadangan log ekor. Log akan dipangkas kecuali opsi NO_TRUNCATE atau opsi COPY_ONLY juga ditetapkan.Penting: Hindari menggunakan NO_TRUNCATE, kecuali ketika database rusak atau offline. Anda mungkin perlu memasukkan database ke dalam mode pengguna tunggal untuk mendapatkan akses eksklusif sebelum melakukan pemulihan dengan NORECOVERY. Setelah pemulihan, atur kembali database ke mode multi-pengguna. |
CONTINUE_AFTER_ERROR |
Gunakan CONTINUE_AFTER_ERROR hanya jika Anda mencadangkan bagian akhir basis data yang rusak.Saat Anda mencadangkan ekor log dari database yang rusak, beberapa metadata yang biasanya dicatat dalam cadangan log mungkin tidak tersedia. Untuk informasi lebih lanjut, lihat bagian berikutnya. |
Cadangan log akhir dengan metadata cadangan yang tidak lengkap
Pencadangan log ekor mencadangkan bagian akhir log meskipun database sedang offline, rusak, atau file datanya hilang. Hal ini dapat menyebabkan metadata yang tidak lengkap dari perintah informasi pemulihan dan msdb. Namun, hanya metadata yang tidak lengkap; log yang diambil selesai dan dapat digunakan.
Jika cadangan tail-log memiliki metadata yang tidak lengkap, di tabel backupset, has_incomplete_metadata diatur ke 1. Selain itu, dalam output RESTORE HEADERONLY, HasIncompleteMetadata diatur ke 1.
Jika metadata dalam cadangan log ekor tidak lengkap, tabel backupfilegroup kehilangan sebagian besar informasi tentang grup file pada saat pencadangan log ekor. Sebagian besar kolom tabel adalah backupfilegroup; satu-satunya NULL kolom yang bermakna adalah sebagai berikut:
backup_set_idfilegroup_idtypetype_descis_readonly
Tugas terkait
Untuk membuat cadangan tail-log, lihat Mencadangkan Log Transaksi Saat Database Mengalami Kerusakan (SQL Server).
Untuk memulihkan cadangan log transaksi, lihat Memulihkan Cadangan Log Transaksi (SQL Server).