"Truncate log on checkpoint" pilihan di SQL Server


11

Ceritanya panjang, tetapi konsultan jangka panjang kami (mantan karyawan) menulis skrip khusus beberapa tahun yang lalu (2006 atau lebih) untuk berinteraksi dengan Tivoli Storage Manager dan tampaknya memeriksa opsi SQL Server DB bernama truncate log on checkpoint. Klaim mereka adalah itu mencegah skrip berfungsi dan melakukan backup pada contoh yaitu SQL 2012.

Saya merasa itu BS lengkap karena saya tidak dapat menemukan opsi tersebut melalui sp_configuredan cadangan bekerja di mana-mana kecuali satu contoh. Namun saya ingin menghapus ranjau darat, jika memang seperti itu, dan menghapus elemen usang lainnya. Saya minta mereka memeriksa dengan vendor tetapi saya tidak memiliki tingkat kepercayaan yang tinggi pada apa pun yang mereka katakan.

Penelitian yang saya lakukan kembali sedikit lebih dari itu mungkin menjadi opsi untuk SQL 2000 atau opsi Sybase. Klaim lain adalah bahwa itu dipanggil / digunakan secara implisit pada versi yang lebih baru (2008 dan lebih tinggi) ketika model pemulihan ada SIMPLEdan tidak ada opsi eksplisit untuk menyalakan atau mematikannya.

Karena TRUNCATE LOGperintah sudah usang karena cara kerja transaksi log hari ini, saya pikir itu bukan pilihan yang bahkan dapat ditanyakan pada titik ini.

Karena saya tidak memiliki contoh SQL Server 2000, saya berharap seseorang dapat mengingat ini atau bisa memeriksanya pada yang mereka gunakan. Saya sudah memberi tahu mereka bahwa tidak ada yang bisa saya rekomendasikan. Saya juga berharap seseorang dapat mengkonfirmasi ini sudah usang.

Jawaban:


9

Anda masih dapat melihat (minimal di SQL Server 2008R2) trunc. log on chkpt.menggunakan sp_dboption, dan Anda dapat mengatur opsi database juga

masukkan deskripsi gambar di sini

masukkan deskripsi gambar di sini

Di SQL Server 2012 dan lebih tinggi, Anda akan mendapatkan kesalahan yang bagus

Msg 2812, Level 16, Negara 62, Baris 1 Tidak dapat menemukan prosedur tersimpan 'sp_dboption'.

HANYA ada berbaring untuk kompatibilitas mundur HANYA. Dalam SQL Server 2000 dan lebih tinggi, SQL Server memiliki konsep model pemulihan yang menentukan bagaimana pemotongan log dihormati misalnya Dalam pemulihan sederhana - hanya pos pemeriksaan akan memotong log di mana seperti dalam mode pemulihan penuh - hanya cadangan log yang akan memotong log .

Jika Anda ingin lebih memahami tentang Manajemen Log Transaksi maka lihat Stairway to Transaction Log Management

Sebagai catatan, SybaseASE bahkan dalam versi yang lebih baru Sybase 15.7 memiliki opsi ini (Faktanya ia memiliki duplikat trunc log on chkptdan trunc. log on chkpt.yang belakangan adalah yang SQL Server dapatkan dalam SQL 7.0 melalui SQL Server 2008R2 - terlihat di sp_dboption):

masukkan deskripsi gambar di sini

masukkan deskripsi gambar di sini


Itu sama seperti yang saya pikirkan. Saya tidak melihat sp_dboption pada tahun 2012 jadi saya menganggap itu telah dihapus. Saya memang menemukan SP pada tahun 2008 dan memang opsi ada pada tahun 2008. Saya akan dengan senang hati mengatakan bahwa itu tidak dapat diubah. Saya tidak ingin mengubahnya bahkan jika itu tidak usang. Terima kasih telah mengkonfirmasi, serta menjelaskan konsepnya dengan baik.
user3885315
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.