Menginisialisasi Langganan Secara Manual

Berlaku untuk:SQL ServerAzure SQL Managed Instance

Topik ini menjelaskan cara menginisialisasi langganan secara manual di SQL Server dengan menggunakan SQL Server Management Studio atau Transact-SQL. Meskipun rekam jepret awal biasanya digunakan untuk menginisialisasi langganan, langganan ke publikasi dapat diinisialisasi tanpa menggunakan rekam jepret, asalkan skema dan data awal sudah ada di pelanggan.

Sebelum Anda mulai

Batasan dan Pembatasan

  • Jika ada aktivitas pada database yang diterbitkan menggunakan replikasi transaksional antara data waktu dan skema disalin ke Pelanggan dan waktu saat langganan diinisialisasi secara manual, perubahan yang dihasilkan dari aktivitas ini mungkin tidak direplikasi ke Pelanggan.

Menggunakan SQL Server Management Studio

Menginisialisasi langganan ke publikasi secara manual dengan menyalin skema (dan biasanya data) ke database langganan. Skema dan data harus cocok dengan database publikasi. Kemudian tentukan bahwa langganan tidak memerlukan skema dan data di halaman Inisialisasi Langganan dari Panduan Langganan Baru. Untuk informasi selengkapnya tentang mengakses wizard ini, lihat Menginisialisasi Langganan Transaksi tanpa Rekam Jepret dan Membuat Langganan Pull.

Saat Anda menyinkronkan langganan untuk pertama kalinya, objek dan metadata yang diperlukan oleh replikasi disalin ke database langganan.

Untuk menginisialisasi langganan ke publikasi secara manual

  1. Pastikan bahwa skema dan data disalin ke database langganan.

  2. Kosongkan kotak centang Inisialisasi pada halaman Inisialisasi Langganan dari Panduan Langganan Baru. Lakukan ini untuk setiap langganan yang hanya memerlukan objek replikasi dan metadata untuk disalin.

Menggunakan T-SQL

Langganan dapat diinisialisasi secara manual menggunakan prosedur tersimpan replikasi.

Untuk menginisialisasi langganan penarikan secara manual ke publikasi transaksi

  1. Pastikan bahwa skema dan data ada di database langganan. Untuk informasi selengkapnya, lihat Menginisialisasi Langganan Transaksi tanpa Rekam Jepret.

  2. Di Publisher pada database publikasi, jalankan sp_addsubscription. Tentukan @publication, @subscriber, nama database di Pelanggan yang berisi data yang diterbitkan untuk @destination_db, nilai tarik untuk @subscription_type, dan nilai dukungan replikasi hanya untuk @sync_type. Untuk informasi selengkapnya, lihat Membuat Langganan Pull.

  3. Di Pelanggan, jalankan sp_addpullsubscription. Untuk memperbarui langganan, lihat Membuat Langganan yang Dapat Diperbarui ke Publikasi Transaksional.

  4. Di Pelanggan, jalankan sp_addpullsubscription_agent. Untuk informasi selengkapnya, lihat Membuat Langganan Pull.

  5. Mulai Agen Distribusi untuk mentransfer objek replikasi dan mengunduh perubahan terbaru dari Penerbit. Untuk informasi selengkapnya, lihat Menyinkronkan Langganan Pull.

Untuk menginisialisasi langganan pendorongan secara manual ke publikasi transaksi

  1. Pastikan bahwa skema dan data ada di database langganan. Untuk informasi selengkapnya, lihat Menginisialisasi Langganan Transaksi tanpa Rekam Jepret.

  2. Di Publisher pada database publikasi, jalankan sp_addsubscription. Tentukan nama database di Pelanggan yang berisi data yang diterbitkan untuk @destination_db, nilai dorongan untuk @subscription_type, dan nilai dukungan replikasi hanya untuk @sync_type. Untuk memperbarui langganan, lihat Membuat Langganan yang Dapat Diperbarui ke Publikasi Transaksional.

  3. Di Publisher pada database publikasi, jalankan sp_addpushsubscription_agent. Untuk informasi selengkapnya, lihat Membuat Langganan Push.

  4. Mulai Agen Distribusi untuk mentransfer objek replikasi dan mengunduh perubahan terbaru dari Penerbit. Untuk informasi selengkapnya, lihat Menyinkronkan Langganan Push.

Untuk menginisialisasi langganan penarikan secara manual ke publikasi gabungan

  1. Pastikan bahwa skema dan data ada di database langganan. Ini dapat dilakukan dengan memulihkan cadangan database publikasi di Pelanggan.

  2. Di Publisher, jalankan sp_addmergesubscription. Tentukan @publication, @subscriber, @subscriber_db, dan nilai tarik untuk @subscription_type. Ini mendaftarkan langganan penarikan.

  3. Di Pelanggan pada database yang berisi data yang diterbitkan, jalankan sp_addmergepullsubscription. Tentukan nilai tidak ada untuk @sync_type.

  4. Di Pelanggan, jalankan sp_addmergepullsubscription_agent. Untuk informasi selengkapnya, lihat Membuat Langganan Pull.

  5. Mulai Agen Penggabungan untuk mentransfer objek replikasi dan mengunduh perubahan terbaru dari Publisher. Untuk informasi selengkapnya, lihat Menyinkronkan Langganan Pull.

Untuk menginisialisasi langganan push secara manual ke publikasi gabungan

  1. Pastikan bahwa skema dan data ada di database langganan. Ini dapat dilakukan dengan memulihkan cadangan database publikasi di Pelanggan.

  2. Di Publisher pada database publikasi, jalankan sp_addmergesubscription. Tentukan nama database di Pelanggan yang berisi data yang diterbitkan untuk @subscriber_db, nilai dorongan untuk @subscription_type, dan nilai tidak ada untuk @sync_type.

  3. Di Publisher pada database publikasi, jalankan sp_addmergepushsubscription_agent. Untuk informasi selengkapnya, lihat Membuat Langganan Push.

  4. Mulai Agen Penggabungan untuk mentransfer objek replikasi dan mengunduh perubahan terbaru dari Publisher. Untuk informasi selengkapnya, lihat Menyinkronkan Langganan Push.

Lihat Juga

Menginisialisasi Langganan Transaksi tanpa Rekam Jepret
Mencadangkan dan Memulihkan Database yang Direplikasi
Praktik Terbaik Keamanan Replikasi