Pertama-tama saya harus mengakui bahwa saya berjuang dengan konsep Log Transaksi. Maksud saya - saya mengerti bahwa ini adalah Log dari semua Transaksi yang terjadi pada basis data, tetapi ketika harus memasukkannya ke dalam konteks dengan benar dalam beberapa tugas, saya jelas tidak memiliki sesuatu. Jadi, bagi siapa pun yang akan menjawab pertanyaan - jangan ragu untuk memperluas teori di balik Transaction Log.
Pertanyaan utamanya adalah - Saya memiliki SQL Server 2008 dan basis data 2 GB yang saya perlu mirrored (memiliki log transaksi 12GB). Jika saya tidak mirroring database itu saya kira saya bisa beralih ke mode Sederhana atau memotong log setelah cadangan. Tetapi dalam hal ini - apa yang harus saya lakukan jika saya ingin menjaga agar log transaksi tetap terkendali? Seperti yang saya mengerti - Saya perlu menyimpan seluruh transaksi log jika saya ingin dapat dengan mudah mirror database (lakukan saja pencadangan penuh).
Apakah ada jalan keluarnya? Idealnya saya berharap dimungkinkan untuk melakukan pencadangan yang membuat baik MDF dan LDF dalam 1 file setiap kali dan setelah pencadangan dilakukan Transaction Log (LDF) pada basis data dikurangi menjadi 0. Masalah dengan skenario ini adalah pencadangan tambahan - jika pencadangan pertama saya log terpotong, saya berasumsi bahwa cadangan kedua perlu referensi pertama jika saya ingin melakukan mirroring nanti (yaitu saya akan terjebak dengan menyimpan banyak file, bukan hanya satu).
Jadi - adakah yang bisa memberi tahu saya tentang hal ini? Saya mengerti bahwa saya mencoba untuk mengisi banyak lubang di sini dan bahwa "solusi" yang saya usulkan mungkin bukan yang terbaik, tetapi saya akan sangat menghargai jika seseorang dapat mendorong saya ke arah yang benar pada Transaction Logs, bagaimana mereka berdampak mirroring dan terbaik berlatih dengan mereka berdua.
sumber
Untuk memanfaatkan mirroring Anda harus memiliki database dalam mode pemulihan LENGKAP dan perlu mengambil cadangan log transaksi untuk menjaga file log dari tumbuh. Jika Anda tidak memerlukan cadangan log, maka bersihkan setelah x jumlah jam dengan rencana pemeliharaan, tetapi harus diambil.
Untuk membersihkan lingkungan, Anda harus menghapus mirroring, alihkan mode pemulihan ke sederhana, turunkan ukuran file log melalui Paul Randal Way yang disarankan , beralih kembali ke mode pemulihan penuh, atur penuh dan log cadangan, lalu inisialisasi ulang Anda cermin. Anda dapat mencoba menurunkan ukuran log saat mirroring berada di tempatnya tetapi akan lebih mudah untuk menghapusnya terlebih dahulu. 1 GB seharusnya tidak terlalu buruk dari db untuk diinisialisasi ulang.
sumber