Retensi Replikasi Snapshot

12

Saya punya replikasi Snapshot yang diatur pada server produksi SQL Server 2008 saya, dan saya baru saja memperhatikan bahwa ada snapshot mulai kembali ke setahun yang lalu di folder snapshot. Bagaimana saya bisa mengubah retensi untuk foto-foto ini? Secara khusus saya ingin menyimpan snapshot selama 5 hari.

Berikut screenshot dari folder yang saya lihat: Folder replikasi

DForck42
sumber
Saya telah mencoba semua cara yang mungkin telah Anda jelaskan tetapi masih memiliki masalah yang sama seperti yang dijelaskan sebelumnya.

Jawaban:

7

Ini biasanya merupakan masalah di mana izin pada xp_cmdshell telah dimodifikasi untuk alasan keamanan. Anda juga dapat memiliki masalah ini jika akun SQL Agent tidak memiliki izin jaringan yang diperlukan untuk menghapus data dari folder replikasi Anda.

  • Verifikasi xp_cmdshell diaktifkan dan akun yang menjalankannya memiliki izin yang sesuai.

    USE master
    GO
    EXEC sp_configure 'show advanced option', '1';
    reconfigure;
    GO
    exec sp_configure 'xp_cmdshell';

Output harus:

name         minimum    maximum config_value run_value
xp_cmdshell  0          1       1            1
Kenneth
sumber
Satu hal lagi yang perlu diperiksa adalah pekerjaan pembersihan Anda diaktifkan. Saya telah melihat kasus di mana pekerjaan itu hanya dinonaktifkan.
Kenneth
Yah, saya punya pekerjaan yang disebut "Agen hisotry membersihkan: distribusi", dan itu sudah berjalan dengan baik (dan itu diaktifkan).
DForck42
Saya mengaktifkan xm_cmdshell sebelumnya, dan sekarang menunjukkan hasil tersebut.
DForck42
4

Dalam pengalaman saya, penyimpanan folder snapshot berfungsi seperti ini:

Jika pelanggan anonim tidak diaktifkan untuk publikasi itu dan jika semua pelanggan telah menggunakan foto itu, proses selanjutnya dari agen pembersihan akan menghapus foto itu.

Jika pelanggan anonim diaktifkan dan periode penyimpanan distribusi telah berlalu, agen pembersih berikutnya akan menghapus foto itu.

Dalam situasi Anda, di mana Anda ingin menyimpan snapshot selama 2 bulan, Anda bisa melakukannya dengan mengizinkan langganan anonim dan mengatur retensi distribusi menjadi 2 bulan, jika memungkinkan.

Jika basis data distribusi Anda digunakan untuk replikasi transaksional, Anda juga dapat berpotensi melihat basis data distribusi semakin banyak.

Semoga ini membantu,

Mat

Matt M
sumber
di mana saya mengatur retensi distribusi?
DForck42
2
@ DForck42 Dalam SSMS, Replikasi Klik Kanan dan Properti Distributor Klik-Kiri. Dari sana, Anda dapat menyesuaikan periode retensi transaksional.
Matt M
1

Coba ini:

Pergi ke properti Monitor Replikasi (klik kanan pada Replication Monitory -> Properties) dan Anda akan melihat periode Retensi Sejarah di sana. Anda harus dapat mengaturnya di sana.

Thomas Stringer
sumber
Saya tidak berpikir itu berlaku untuk replikasi foto.
Kenneth