Bagikan melalui


Pencadangan Tail-Log (SQL Server)

Topik ini hanya relevan untuk pencadangan dan pemulihan database SQL Server yang menggunakan model pemulihan penuh atau dicatat secara massal.

Cadangan log ekor menangkap catatan log apa pun yang belum dicadangkan (ekor log) untuk mencegah kehilangan pekerjaan dan menjaga rantai log tetap utuh. Sebelum Anda dapat memulihkan database SQL Server ke titik waktu terbarunya, Anda harus mencadangkan ekor log transaksinya. Pencadangan log ekor akan menjadi cadangan terakhir yang menarik dalam rencana pemulihan untuk database.

Catatan

Tidak semua skenario pemulihan memerlukan cadangan tail-log. Anda tidak memerlukan cadangan log ekor jika titik pemulihan terkandung dalam cadangan log sebelumnya. Selain itu, cadangan log ekor tidak perlu jika Anda memindahkan atau mengganti (menimpa) database dan tidak perlu memulihkannya ke titik waktu setelah pencadangan terbarunya.

Skenario yang Memerlukan Pencadangan Tail-Log

Kami menyarankan agar Anda mengambil cadangan log ekor dalam skenario berikut:

  • Jika database online dan Anda berencana untuk melakukan operasi pemulihan pada database, mulailah dengan mencadangkan ekor log. Untuk menghindari kesalahan untuk database online, Anda harus menggunakan ... DENGAN opsi NORECOVERY dari pernyataan BACKUPTransact-SQL.

  • Jika database offline dan gagal memulai dan Anda perlu memulihkan database, pertama-tama cadangkan ekor log. Karena tidak ada transaksi yang dapat terjadi saat ini, menggunakan WITH NORECOVERY bersifat opsional.

  • Jika database rusak, coba ambil cadangan tail-log dengan menggunakan opsi WITH CONTINUE_AFTER_ERROR pernyataan BACKUP.

    Pada database yang rusak yang mencadangkan ekor log hanya dapat berhasil jika file log tidak rusak, database dalam keadaan yang mendukung pencadangan tail-log, dan database tidak berisi perubahan yang dicatat secara massal. Jika cadangan log ekor tidak dapat dibuat, transaksi apa pun yang dilakukan setelah pencadangan log terbaru hilang.

Tabel berikut ini meringkas opsi BACKUP NORECOVERY dan CONTINUE_AFTER_ERROR.

Opsi LOG CADANGAN Komentar
NORECOVERY Gunakan NORECOVERY setiap kali Anda berniat untuk melanjutkan operasi pemulihan pada database. NORECOVERY membawa database ke status pemulihan. Ini menjamin bahwa database tidak berubah setelah pencadangan tail-log. Log dipotok kecuali opsi NO_TRUNCATE atau opsi COPY_ONLY juga ditentukan.

**Penting** Kami menyarankan agar Anda menghindari penggunaan NO_TRUNCATE, kecuali ketika database rusak.
CONTINUE_AFTER_ERROR Gunakan CONTINUE_AFTER_ERROR hanya jika Anda mencadangkan ekor database yang rusak.

Catatan: Saat Anda menggunakan pencadangan ekor log pada database yang rusak, beberapa metadata yang biasanya diambil dalam cadangan log mungkin tidak tersedia. Untuk informasi selengkapnya, lihat Pencadangan Tail-Log yang Memiliki Metadata Cadangan Tidak Lengkap, nanti dalam topik ini.

Tail-Log Cadangan yang Memiliki Metadata Cadangan Tidak Lengkap

Pencadangan log tail menangkap ekor log meskipun database offline, rusak, atau file data hilang. 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 log ekor memiliki metadata yang tidak lengkap, dalam tabel set cadangan , has_incomplete_metadata diatur ke 1. Selain itu, dalam output RESTORE HEADERONLY, HasIncompleteMetadata diatur ke 1.

Jika metadata dalam cadangan tail-log tidak lengkap, tabel backupfilegroup akan kehilangan sebagian besar informasi tentang grup file pada saat pencadangan tail-log. Sebagian besar kolom tabel backupfilegroup adalah NULL; satu-satunya kolom yang bermakna adalah sebagai berikut:

  • backup_set_id

  • filegroup_id

  • jenis

  • type_desc

  • is_readonly

Tugas Terkait

Untuk membuat cadangan tail-log, lihat Mencadangkan Log Transaksi Saat Database Rusak (SQL Server).

Untuk memulihkan cadangan log transaksi, lihat Memulihkan Cadangan Log Transaksi (SQL Server).

Lihat juga

BACKUP (Transact-SQL)
RESTORE (Transact-SQL)
Mencadangkan dan Memulihkan Database SQL Server
Pencadangan Khusus Salin (SQL Server)
Pencadangan Log Transaksi (SQL Server)
Terapkan Pencadangan Log Transaksi (SQL Server)