Bagikan melalui


Strategi untuk Mencadangkan dan Memulihkan Rekam Jepret dan Replikasi Transaksional

Saat Anda merancang strategi pencadangan dan pemulihan untuk rekam jepret dan replikasi transaksional, ada tiga area yang perlu dipertimbangkan:

  • Database mana yang akan dicadangkan.

  • Pengaturan cadangan untuk replikasi transaksional.

  • Langkah-langkah yang diperlukan untuk memulihkan database. Ini tergantung pada jenis replikasi dan opsi yang dipilih.

Topik ini mencakup masing-masing area ini di tiga bagian berikutnya. Untuk informasi tentang pencadangan dan pemulihan untuk penerbitan Oracle, lihat Pencadangan dan Pemulihan untuk Penerbit Oracle.

Mencadangkan Database

Untuk rekam jepret dan replikasi transaksional, Anda harus mencadangkan database berikut secara teratur:

  • Database publikasi di Publisher.

  • Database distribusi di Distributor.

  • Database langganan di setiap Pelanggan.

  • Database sistem master dan msdb di Penerbit, Distributor, dan semua Pelanggan. Database ini harus dicadangkan pada saat yang sama satu sama lain dan database replikasi yang relevan. Misalnya, cadangkan database master dan msdb di Publisher pada saat yang sama Anda mencadangkan database publikasi. Jika database publikasi dipulihkan, pastikan database master dan msdb konsisten dengan database publikasi sehubungan dengan konfigurasi dan pengaturan replikasi.

Jika Anda melakukan pencadangan log reguler, setiap perubahan terkait replikasi harus diambil dalam cadangan log. Jika Anda tidak melakukan pencadangan log, pencadangan harus dilakukan setiap kali pengaturan yang relevan dengan replikasi diubah. Untuk informasi selengkapnya, lihat Tindakan Umum Yang Memerlukan Pencadangan yang Diperbarui.

Pengaturan Pencadangan untuk Replikasi Transaksional

Replikasi transaksional mencakup penggunaan opsi sinkronisasi dengan cadangan , yang dapat diatur pada database distribusi dan database publikasi:

  • Kami menyarankan agar Anda selalu mengatur opsi ini pada database distribusi.

    Mengatur opsi ini pada database distribusi memastikan bahwa transaksi dalam log database publikasi tidak akan terpotok sampai transaksi telah dicadangkan di database distribusi. Database distribusi dapat dipulihkan ke cadangan terakhir, dan setiap transaksi yang hilang dikirimkan dari database publikasi ke database distribusi. Replikasi terus tidak terpengaruh.

    Mengatur opsi ini pada database distribusi tidak memengaruhi latensi replikasi. Namun, opsi ini akan menunda pemotokan log pada database publikasi hingga transaksi yang sesuai dalam database distribusi telah dicadangkan. (Ini dapat membuat log transaksi yang lebih besar di database publikasi.)

  • Kami menyarankan agar Anda mengatur opsi ini pada database publikasi jika aplikasi Anda dapat mentolerir latensi tambahan.

    Mengatur opsi ini pada database publikasi memastikan bahwa transaksi tidak dikirimkan ke database distribusi hingga dicadangkan di database publikasi. Cadangan database publikasi terakhir kemudian dapat dipulihkan di Penerbit tanpa kemungkinan database distribusi memiliki transaksi yang tidak dimiliki database publikasi yang dipulihkan.

    Latensi dan throughput terpengaruh karena transaksi tidak dapat dikirimkan ke database distribusi hingga dicadangkan di Publisher. Misalnya, jika log transaksi dicadangkan setiap lima menit, ada latensi tambahan lima menit antara ketika transaksi dilakukan di Penerbit dan ketika transaksi dikirimkan ke database distribusi, dan selanjutnya Pelanggan.

    Catatan

    Opsi sinkronisasi dengan cadangan memastikan konsistensi antara database publikasi dan database distribusi, tetapi opsi tidak menjamin kehilangan data. Misalnya, jika log transaksi hilang, transaksi yang telah dilakukan sejak pencadangan log transaksi terakhir tidak akan tersedia di database publikasi atau database distribusi. Ini adalah perilaku yang sama dengan database yang tidak direplikasi.

Untuk mengatur sinkronisasi dengan opsi pencadangan

Memulihkan Database yang Terlibat dalam Replikasi

Anda dapat memulihkan semua database dalam topologi replikasi jika cadangan terbaru tersedia dan langkah-langkah yang sesuai diikuti. Langkah-langkah pemulihan untuk database publikasi bergantung pada jenis replikasi dan opsi yang digunakan; namun, langkah-langkah pemulihan untuk semua database lain tidak bergantung pada jenis dan opsi.

Replikasi mendukung pemulihan database yang direplikasi ke server dan database yang sama tempat cadangan dibuat. Jika Anda memulihkan cadangan database yang direplikasi ke server atau database lain, pengaturan replikasi tidak dapat dipertahankan. Dalam hal ini, Anda harus membuat ulang semua publikasi dan langganan setelah cadangan dipulihkan.

Publisher

Ada langkah-langkah pemulihan yang disediakan untuk jenis replikasi berikut:

  • replikasi snapshot

  • Replikasi transaksional baca-saja

  • Replikasi transaksional dengan memperbarui langganan

  • Replikasi transaksional peer-to-peer

Pemulihan database msdb dan master , yang juga tercakup dalam bagian ini, sama untuk keempat jenis.

Database Publikasi: Replikasi Rekam Jepret

  1. Pulihkan cadangan terbaru database publikasi. Buka langkah 2.

  2. Apakah cadangan database publikasi berisi konfigurasi terbaru untuk semua publikasi dan langganan? Jika ya, pemulihan selesai. Jika tidak, lanjutkan ke langkah 3.

  3. Hapus konfigurasi replikasi dari Penerbit, Distributor, dan Pelanggan, lalu buat ulang konfigurasi. Pemulihan selesai.

    Untuk informasi selengkapnya tentang cara menghapus replikasi, lihat sp_removedbreplication (Transact-SQL).

Database Publikasi: Read-Only Replikasi Transaksional

  1. Pulihkan cadangan terbaru database publikasi. Buka langkah 2.

  2. Apakah sinkronisasi dengan pengaturan pencadangan diaktifkan pada database publikasi sebelum kegagalan? Jika ya, lanjutkan ke langkah 3; jika tidak, lanjutkan ke langkah 5.

    Jika pengaturan diaktifkan, kueri SELECT DATABASEPROPERTYEX('<PublicationDatabaseName>', 'IsSyncWithBackup') mengembalikan '1'.

  3. Apakah pencadangan yang dipulihkan selesai dan terbaru? Apakah berisi konfigurasi terbaru untuk semua publikasi dan langganan? Jika ya, pemulihan selesai. Jika tidak, lanjutkan ke langkah 4.

  4. Informasi konfigurasi dalam database publikasi yang dipulihkan tidak diperbarui. Oleh karena itu, Anda harus memastikan bahwa Pelanggan memiliki semua perintah yang luar biasa dalam database distribusi, lalu menghilangkan dan membuat ulang konfigurasi replikasi.

    1. Jalankan Agen Distribusi hingga semua Pelanggan disinkronkan dengan perintah yang luar biasa dalam database distribusi. Verifikasi bahwa semua perintah dikirimkan ke Pelanggan dengan menggunakan tab Perintah yang Tidak Didistribusikan di Monitor Replikasi atau dengan mengkueri tampilan MSdistribution_status dalam database distribusi. Buka langkah b.

      Untuk informasi selengkapnya tentang cara menjalankan Agen Distribusi, lihat Memulai dan Menghentikan Konsep Agen Replikasi (SQL Server Management Studio) dan Agen Replikasi yang Dapat Dieksekusi.

      Untuk informasi selengkapnya tentang cara memverifikasi perintah, lihat Menampilkan Perintah yang Direplikasi dan Informasi Lainnya di Database Distribusi (Pemrograman Transak-SQL Replikasi) dan Menampilkan Informasi dan Melakukan Tugas menggunakan Monitor Replikasi.

    2. Hapus konfigurasi replikasi dari Penerbit, Distributor, dan Pelanggan, lalu buat ulang konfigurasi. Saat Anda membuat ulang langganan, tentukan bahwa Pelanggan sudah memiliki data. Pemulihan selesai.

      Untuk informasi selengkapnya tentang cara menghapus replikasi, lihat sp_removedbreplication (Transact-SQL).

      Untuk informasi selengkapnya tentang cara menentukan bahwa Pelanggan sudah memiliki data, lihat Menginisialisasi Langganan Secara Manual.

  5. Opsi sinkronkan dengan cadangan tidak diatur pada database publikasi. Oleh karena itu, transaksi yang tidak termasuk dalam cadangan yang dipulihkan mungkin telah dikirimkan ke Distributor dan Pelanggan. Anda sekarang harus memastikan bahwa Pelanggan memiliki semua perintah yang luar biasa dalam database distribusi, lalu menerapkan secara manual ke database publikasi setiap transaksi yang tidak disertakan dalam cadangan yang dipulihkan.

    Penting

    Melakukan proses ini dapat menyebabkan tabel yang diterbitkan dipulihkan ke titik waktu yang lebih baru daripada titik waktu tabel lain yang tidak diterbitkan yang dipulihkan dari cadangan.

    1. Jalankan Agen Distribusi hingga semua Pelanggan disinkronkan dengan perintah yang luar biasa dalam database distribusi. Verifikasi bahwa semua perintah dikirimkan ke Pelanggan dengan menggunakan tab Perintah yang Tidak Didistribusikan di Monitor Replikasi atau dengan mengkueri tampilan MSdistribution_status dalam database distribusi. Buka langkah b.

      Untuk informasi selengkapnya tentang cara menjalankan Agen Distribusi, lihat Memulai dan Menghentikan Konsep Agen Replikasi (SQL Server Management Studio) dan Agen Replikasi yang Dapat Dieksekusi.

      Untuk informasi selengkapnya tentang cara memverifikasi perintah, lihat Menampilkan Perintah yang Direplikasi dan Informasi Lainnya di Database Distribusi (Pemrograman Transak-SQL Replikasi) dan Menampilkan Informasi dan Melakukan Tugas menggunakan Monitor Replikasi.

    2. Gunakan utilitas tablediff atau alat lain untuk menyinkronkan Penerbit secara manual dengan Pelanggan. Ini memungkinkan Anda memulihkan data dari database langganan yang tidak terkandung dalam cadangan database publikasi. Lanjutkan ke langkah c.

      Untuk informasi selengkapnya tentang utilitas tablediff , lihat Membandingkan Tabel Yang Direplikasi untuk Perbedaan (Pemrograman Replikasi).

    3. Apakah pencadangan yang dipulihkan selesai dan terbaru? Apakah berisi konfigurasi terbaru untuk semua publikasi dan langganan? Jika ya, jalankan prosedur tersimpan sp_replrestart untuk menyinkronkan ulang metadata Publisher dengan metadata Distributor. Pemulihan selesai. Jika tidak, lanjutkan ke langkah d.

    4. Hapus konfigurasi replikasi dari Penerbit, Distributor, dan Pelanggan, lalu buat ulang konfigurasi. Saat Anda membuat ulang langganan, tentukan bahwa Pelanggan sudah memiliki data. Pemulihan selesai.

      Untuk informasi selengkapnya tentang cara menghapus replikasi, lihat sp_removedbreplication (Transact-SQL).

      Untuk informasi selengkapnya tentang cara menentukan bahwa Pelanggan sudah memiliki data, lihat Menginisialisasi Langganan Secara Manual.

Database Publikasi: Replikasi Transaksional dengan Memperbarui Langganan

  1. Pulihkan cadangan terbaru database publikasi. Buka langkah 2.

  2. Jalankan Agen Distribusi hingga semua Pelanggan disinkronkan dengan perintah yang luar biasa dalam database distribusi. Verifikasi bahwa semua perintah dikirimkan ke Pelanggan dengan menggunakan tab Perintah yang Tidak Didistribusikan di Monitor Replikasi, atau dengan mengkueri tampilan MSdistribution_status dalam database distribusi. Buka langkah 3.

    Untuk informasi selengkapnya tentang cara menjalankan Agen Distribusi, lihat Memulai dan Menghentikan Konsep Agen Replikasi (SQL Server Management Studio) dan Agen Replikasi yang Dapat Dieksekusi.

    Untuk informasi selengkapnya tentang cara memverifikasi perintah, lihat Menampilkan Perintah yang Direplikasi dan Informasi Lainnya di Database Distribusi (Pemrograman Transak-SQL Replikasi) dan Menampilkan Informasi dan Melakukan Tugas menggunakan Monitor Replikasi.

  3. Jika Anda menggunakan langganan pembaruan antrean, sambungkan ke setiap Pelanggan dan hapus semua baris dari tabel MSreplication_queue (Transact-SQL) dalam database langganan. Buka langkah 4.

    Catatan

    Jika Anda menggunakan langganan pembaruan antrean dan tabel apa pun berisi kolom identitas, Anda harus memastikan bahwa rentang identitas yang benar ditetapkan setelah pemulihan. Untuk informasi selengkapnya, lihat Mereplikasi Kolom Identitas.

  4. Anda sekarang harus memastikan bahwa Pelanggan memiliki semua perintah yang luar biasa dalam database distribusi, lalu menerapkan secara manual ke database publikasi setiap transaksi yang tidak disertakan dalam cadangan yang dipulihkan.

    Penting

    Melakukan proses ini dapat menyebabkan tabel yang diterbitkan dipulihkan ke titik waktu yang lebih baru daripada titik waktu tabel lain yang tidak diterbitkan yang dipulihkan dari cadangan.

    1. Jalankan Agen Distribusi hingga semua Pelanggan disinkronkan dengan perintah yang luar biasa dalam database distribusi. Verifikasi bahwa semua perintah dikirimkan ke Pelanggan dengan menggunakan Monitor Replikasi atau dengan mengkueri tampilan MSdistribution_status dalam database distribusi. Buka langkah b.

    2. Gunakan Utilitas tablediff atau alat lain untuk menyinkronkan Penerbit secara manual dengan Pelanggan. Ini memungkinkan Anda memulihkan data dari database langganan yang tidak terkandung dalam cadangan database publikasi. Lanjutkan ke langkah c.

      Untuk informasi selengkapnya tentang utilitas tablediff , lihat Membandingkan Tabel Yang Direplikasi untuk Perbedaan (Pemrograman Replikasi).

    3. Apakah pencadangan yang dipulihkan selesai dan terbaru? Apakah berisi konfigurasi terbaru untuk semua publikasi dan langganan? Jika ya, jalankan prosedur tersimpan sp_replrestart untuk menyinkronkan ulang metadata Publisher dengan metadata Distributor. Pemulihan selesai. Jika tidak, lanjutkan ke langkah d.

    4. Hapus konfigurasi replikasi dari Penerbit, Distributor, dan Pelanggan, lalu buat ulang konfigurasi. Saat Anda membuat ulang langganan, tentukan bahwa Pelanggan sudah memiliki data. Pemulihan selesai.

      Untuk informasi selengkapnya tentang cara menghapus replikasi, lihat dan sp_removedbreplication (Transact-SQL).

      Untuk informasi selengkapnya tentang cara menentukan bahwa Pelanggan sudah memiliki data, lihat Menginisialisasi Langganan Secara Manual.

Database Publikasi: Replikasi Transaksional Peer-to-Peer

Dalam langkah-langkah berikut, database publikasi A, B, dan C berada dalam topologi replikasi transaksional peer-to-peer. Database A dan C online dan berfungsi dengan baik; database B adalah database yang akan dipulihkan. Proses yang dijelaskan di sini, terutama langkah 7, 10, dan 11, sangat mirip dengan proses yang diperlukan untuk menambahkan node ke topologi peer-to-peer. Cara paling mudah untuk melakukan langkah-langkah ini adalah dengan menggunakan Wizard Konfigurasi Topologi Peer-to-Peer, tetapi Anda juga dapat menggunakan prosedur tersimpan.

  1. Jalankan Agen Distribusi untuk menyinkronkan langganan di database A dan C. Buka langkah 2.

    Untuk informasi selengkapnya tentang cara menjalankan Agen Distribusi, lihat Memulai dan Menghentikan Konsep Agen Replikasi (SQL Server Management Studio) dan Agen Replikasi yang Dapat Dieksekusi.

  2. Jika database distribusi yang digunakan B masih tersedia, jalankan Agen Distribusi untuk menyinkronkan langganan antara database B dan A dan database serta B dan C. Buka langkah 3.

  3. Hapus metadata dari database distribusi yang digunakan B dengan menjalankan sp_removedistpublisherdbreplication di database distribusi untuk B. Buka langkah 4.

  4. Di database A dan C, letakkan langganan ke publikasi di database B. Buka langkah 5.

    Untuk informasi selengkapnya tentang cara menghilangkan langganan, lihat Berlangganan Publikasi.

  5. Lakukan pencadangan log atau pencadangan penuh database A. Buka langkah 6.

  6. Pulihkan cadangan database A di database B. Database B sekarang memiliki data dari database A, tetapi bukan konfigurasi replikasi. Ketika Anda memulihkan cadangan ke server lain, replikasi dihapus; oleh karena itu, replikasi telah dihapus dari database B. Buka langkah 7.

  7. Buat ulang publikasi di database B, lalu buat ulang langganan antara database A dan B. (Langganan yang melibatkan database C ditangani pada tahap selanjutnya.).

    1. Buat ulang publikasi di database B. Buka langkah b.

    2. Buat ulang langganan di database B ke publikasi di database A, yang menentukan bahwa langganan harus diinisialisasi dengan cadangan (nilai inisialisasi dengan cadangan untuk parameter @sync_type sp_addsubscription). Lanjutkan ke langkah c.

    3. Buat ulang langganan di database A ke publikasi di database B, yang menentukan bahwa Pelanggan sudah memiliki data (nilai dukungan replikasi hanya untuk parameter @sync_typesp_addsubscription). Buka langkah 8.

  8. Jalankan Agen Distribusi untuk menyinkronkan langganan di database A dan B. Jika ada kolom identitas dalam tabel yang diterbitkan, buka langkah 9. Jika tidak, lanjutkan ke langkah 10.

  9. Setelah pemulihan, rentang identitas yang Anda tetapkan untuk setiap tabel di database A juga akan digunakan dalam database B. Pastikan bahwa database B yang dipulihkan telah menerima semua perubahan dari database B yang gagal yang disebarkan ke database A dan database C; lalu reseed rentang identitas untuk setiap tabel.

    1. Jalankan sp_requestpeerresponse di database B dan ambil parameter output @request_id. Buka langkah b.

    2. Secara default, Agen Distribusi diatur untuk berjalan terus menerus; oleh karena itu, token harus dikirim ke semua simpul secara otomatis. Jika Agen Distribusi tidak berjalan dalam mode berkelanjutan, jalankan agen. Untuk informasi selengkapnya, lihat Konsep Executables Agen Replikasi atau Memulai dan Menghentikan Agen Replikasi (SQL Server Management Studio). Lanjutkan ke langkah c.

    3. Jalankan sp_helppeerresponses, memberikan nilai @request_id yang diambil pada langkah b. Tunggu hingga semua simpul menunjukkan bahwa mereka telah menerima permintaan serekan. Buka langkah d.

    4. Gunakan DBCC CHECKIDENT untuk mengubah setiap tabel di database B untuk memastikan bahwa rentang yang sesuai digunakan. Buka langkah 10.

    Untuk informasi selengkapnya tentang cara mengelola rentang identitas, lihat bagian "Menetapkan rentang untuk manajemen rentang identitas manual" di Kolom Identitas Replikasi.

  10. Pada titik ini, database B dan database C tidak terhubung langsung, tetapi mereka akan menerima perubahan melalui database A. Jika topologi berisi simpul apa pun yang berjalan SQL Server 2005, buka langkah 11; jika tidak, lanjutkan ke langkah 12.

  11. Hentikan sistem, lalu buat ulang langganan antara database B dan C. Mendiamkan sistem melibatkan aktivitas penghentian pada tabel yang diterbitkan di semua simpul dan memastikan bahwa setiap simpul telah menerima semua perubahan dari semua simpul lainnya.

    1. Hentikan semua aktivitas pada tabel yang diterbitkan dalam topologi peer-to-peer. Buka langkah b.

    2. Jalankan sp_requestpeerresponse di database B dan ambil parameter output @request_id. Lanjutkan ke langkah c.

    3. Secara default, Agen Distribusi diatur untuk berjalan terus menerus; oleh karena itu, token harus dikirim ke semua simpul secara otomatis. Jika Agen Distribusi tidak berjalan dalam mode berkelanjutan, jalankan agen. Buka langkah d.

    4. Jalankan sp_helppeerresponses, memberikan nilai @request_id yang diambil pada langkah b. Tunggu hingga semua simpul menunjukkan bahwa mereka telah menerima permintaan serekan. Lanjutkan ke langkah e.

    5. Buat ulang langganan di database B ke publikasi di database C, yang menentukan bahwa Pelanggan sudah memiliki data. Buka langkah b.

    6. Buat ulang langganan di database C ke publikasi di database B, yang menentukan bahwa Pelanggan sudah memiliki data. Buka langkah 13.

  12. Buat ulang langganan antara database B dan C:

    1. Di database B, kueri tabel MSpeer_lsns untuk mengambil nomor urutan log (LSN) dari transaksi terbaru yang diterima database B dari database C.

    2. Buat ulang langganan di database B ke publikasi di database C, yang menentukan bahwa langganan harus diinisialisasi berdasarkan LSN (nilai inisialisasi dari lsn untuk parameter @sync_type sp_addsubscription). Buka langkah b.

    3. Buat ulang langganan di database C ke publikasi di database B, yang menentukan bahwa Pelanggan sudah memiliki data. Buka langkah 13.

  13. Jalankan Agen Distribusi untuk menyinkronkan langganan di database B dan C. Pemulihan selesai.

msdb Database (Publisher)

  1. Pulihkan cadangan terbaru database msdb .

  2. Apakah pencadangan yang dipulihkan selesai dan terbaru? Apakah berisi konfigurasi terbaru untuk semua publikasi dan langganan? Jika ya, pemulihan selesai. Jika tidak, buka langkah 3.

  3. Buat ulang pekerjaan pembersihan langganan dari skrip replikasi Anda. Pemulihan selesai.

Database master (Penerbit)

  1. Pulihkan cadangan terbaru database master .

  2. Pastikan bahwa database konsisten dengan database publikasi sehubungan dengan konfigurasi dan pengaturan replikasi.

Database di Distributor

Database Distribusi

  1. Pulihkan cadangan terbaru database distribusi.

  2. Apakah sinkronisasi dengan pengaturan pencadangan diaktifkan pada database distribusi sebelum kegagalan? Jika ya, buka langkah 3; jika tidak, buka langkah 4.

    Jika pengaturan diaktifkan, kueri SELECT DATABASEPROPERTYEX('<DistributionDatabaseName>', 'IsSyncWithBackup') akan mengembalikan '1'.

  3. Apakah pencadangan yang dipulihkan selesai dan terbaru? Apakah berisi konfigurasi terbaru untuk semua publikasi dan langganan? Jika ya, pemulihan selesai. Jika tidak, buka langkah 4.

  4. Informasi konfigurasi dalam database distribusi yang dipulihkan tidak diperbarui, atau opsi sinkronisasi dengan cadangan tidak diatur pada database distribusi. (Setelah pemulihan, database distribusi mungkin kehilangan transaksi yang dilakukan di Penerbit tetapi belum dikirimkan kepada Pelanggan.) Hilangkan dan buat ulang replikasi, lalu jalankan validasi.

    1. Hapus konfigurasi replikasi dari Penerbit, Distributor, dan Pelanggan, lalu buat ulang konfigurasi. Saat Anda membuat ulang langganan, tentukan bahwa Pelanggan sudah memiliki data. Buka langkah b.

      Untuk informasi selengkapnya tentang cara menghapus replikasi, lihat sp_removedbreplication (Transact-SQL).

      Untuk informasi selengkapnya tentang cara menentukan bahwa Pelanggan sudah memiliki data, lihat Menginisialisasi Langganan Secara Manual.

    2. Tandai semua publikasi untuk validasi. Menginisialisasi ulang langganan apa pun yang gagal validasi. Pemulihan selesai.

      Untuk informasi selengkapnya tentang validasi, lihat Memvalidasi Data yang Direplikasi. Untuk informasi selengkapnya tentang reinisialisasi, lihat Menginisialisasi ulang Langganan.

Database msdb (Distributor)

  1. Pulihkan cadangan terbaru database msdb .

  2. Apakah pencadangan yang dipulihkan selesai dan terbaru? Apakah berisi konfigurasi terbaru untuk semua publikasi dan langganan? Jika ya, pemulihan selesai. Jika tidak, buka langkah 3.

  3. Hapus konfigurasi replikasi dari Penerbit, Distributor, dan Pelanggan, lalu buat ulang konfigurasi. Saat Anda membuat ulang langganan, tentukan bahwa Pelanggan sudah memiliki data. Buka langkah 4.

    Untuk informasi selengkapnya tentang cara menghapus replikasi, lihat sp_removedbreplication (Transact-SQL).

    Untuk informasi selengkapnya tentang cara menentukan bahwa Pelanggan sudah memiliki data, lihat Menginisialisasi Langganan Secara Manual.

  4. Tandai semua publikasi untuk validasi. Menginisialisasi ulang langganan apa pun yang gagal validasi. Pemulihan selesai.

    Untuk informasi selengkapnya tentang validasi, lihat Memvalidasi Data yang Direplikasi. Untuk informasi selengkapnya tentang reinisialisasi, lihat Menginisialisasi ulang Langganan.

Database master (Distributor)

  1. Pulihkan cadangan terbaru database master .

  2. Pastikan bahwa database konsisten dengan database publikasi sehubungan dengan konfigurasi dan pengaturan replikasi.

Database di Pelanggan

Database Langganan

  1. Apakah pencadangan database langganan terbaru lebih baru daripada pengaturan retensi distribusi minimum pada database distribusi? (Ini menentukan apakah Distributor masih memiliki semua perintah yang diperlukan untuk memperbarui Pelanggan.) Jika ya, lanjutkan ke langkah 2. Jika tidak, menginisialisasi ulang langganan. Pemulihan selesai.

    Untuk menentukan pengaturan retensi distribusi maksimum, jalankan sp_helpdistributiondb dan ambil nilai dari kolom max_distretention (nilai ini dalam jam).

    Untuk informasi selengkapnya tentang cara menginisialisasi ulang langganan, lihat Menginisialisasi Ulang Langganan.

  2. Pulihkan cadangan database langganan terbaru. Buka langkah 3.

  3. Jika database langganan hanya berisi langganan push, buka langkah 4. Jika database langganan berisi langganan penarikan, ajukan pertanyaan berikut: Apakah informasi langganan terkini? Apakah database menyertakan semua tabel dan opsi yang ditetapkan pada saat kegagalan. Jika ya, lanjutkan ke langkah 4. Jika tidak, menginisialisasi ulang langganan. Pemulihan selesai.

  4. Untuk menyinkronkan Pelanggan, jalankan Agen Distribusi. Pemulihan selesai.

    Untuk informasi selengkapnya tentang cara menjalankan Agen Distribusi, lihat Memulai dan Menghentikan Konsep Agen Replikasi (SQL Server Management Studio) dan Agen Replikasi yang Dapat Dieksekusi.

Database msdb (Pelanggan)

  1. Pulihkan cadangan terbaru database msdb . Apakah langganan penarikan digunakan di Pelanggan ini? Jika tidak, pemulihan selesai. Jika ya, lanjutkan ke langkah 2.

  2. Apakah pencadangan yang dipulihkan selesai dan terbaru? Apakah berisi konfigurasi terbaru untuk semua langganan penarikan? Jika ya, pemulihan selesai. Jika tidak, buka langkah 3.

  3. Hilangkan dan buat ulang langganan penarikan. Saat Anda membuat ulang langganan, tentukan bahwa Pelanggan sudah memiliki data. Pemulihan selesai.

    Untuk informasi selengkapnya tentang cara menghilangkan langganan, lihat Berlangganan Publikasi.

    Untuk informasi selengkapnya tentang cara menentukan bahwa Pelanggan sudah memiliki data, lihat Menginisialisasi Langganan Secara Manual.

Database master (Pelanggan)

  1. Pulihkan cadangan terbaru database master .

  2. Pastikan bahwa database konsisten dengan database publikasi sehubungan dengan konfigurasi dan pengaturan replikasi.

Lihat juga

Mencadangkan dan Memulihkan Database SQL Server
Mencadangkan dan Memulihkan Database yang Direplikasi
Mengonfigurasi Distribusi
Menerbitkan Data dan Objek Database
Berlangganan Publikasi
Menginisialisasi Langganan
Menyinkronkan Data