Tutorial: Mengonfigurasi replikasi antara server dan klien seluler (gabungkan)

Berlaku untuk:SQL Server

Replikasi penggabungan adalah solusi yang baik untuk masalah pemindahan data antara server pusat dan klien seluler yang hanya sesekali terhubung. Dengan menggunakan wizard replikasi, Anda dapat dengan mudah mengonfigurasi dan mengelola topologi replikasi penggabungan.

Tutorial ini menunjukkan kepada Anda cara mengonfigurasi topologi replikasi untuk klien seluler. Untuk informasi selengkapnya tentang replikasi penggabungan, lihat gambaran umum replikasi penggabungan.

Apa yang akan Anda pelajari

Tutorial ini mengajarkan Anda untuk menggunakan replikasi penggabungan untuk menerbitkan data dari database pusat ke satu atau beberapa pengguna seluler sehingga setiap pengguna mendapatkan subset data yang difilter secara unik.

Dalam tutorial ini, Anda akan belajar cara:

  • Mengonfigurasi penerbit untuk replikasi penggabungan.
  • Tambahkan pelanggan seluler untuk publikasi gabungan.
  • Sinkronkan langganan ke publikasi gabungan.

Prasyarat

Tutorial ini untuk pengguna yang terbiasa dengan operasi database dasar, tetapi yang memiliki pengalaman terbatas dengan replikasi. Sebelum memulai tutorial ini, Anda harus menyelesaikan Tutorial: Menyiapkan SQL Server untuk replikasi.

Untuk menyelesaikan tutorial ini, Anda memerlukan SQL Server, SQL Server Management Studio (SSMS), dan database AdventureWorks:

  • Di server penerbit (sumber), instal:

    • Edisi SQL Server apa pun, kecuali untuk SQL Server Express atau SQL Server Compact. Edisi ini tidak boleh menjadi penerbit replikasi.
    • Database AdventureWorks2022 sampel. Untuk meningkatkan keamanan, database sampel tidak diinstal secara default.
  • Di server pelanggan (tujuan), instal edisi SQL Server apa pun, kecuali SQL Server Express atau SQL Server Compact. Publikasi yang dibuat dalam tutorial ini tidak mendukung SQL Server Express atau SQL Server Compact.

  • Instal SQL Server Management Studio.

  • Instal edisi Pengembang SQL Server 2017.

  • Unduh database sampel AdventureWorks. Untuk instruksi tentang memulihkan database di SQL Server Management Directory, lihat Memulihkan database.

Catatan

  • Replikasi tidak didukung pada instans SQL Server yang terpisah lebih dari dua versi. Untuk informasi selengkapnya, lihat Versi SQL Server yang didukung di Topologi Replikasi.
  • Di SQL Server Management Studio, Anda harus terhubung ke penerbit dan pelanggan dengan menggunakan login yang merupakan anggota peran server tetap sysadmin . Untuk informasi selengkapnya tentang peran ini, lihat Peran tingkat server.

Estimasi waktu untuk menyelesaikan tutorial ini: 60 menit

Mengonfigurasi penerbit untuk replikasi penggabungan

Di bagian ini, Anda membuat publikasi penggabungan dengan menggunakan SQL Server Management Studio untuk menerbitkan subset tabel Employee, SalesOrderHeader, dan SalesOrderDetail dalam AdventureWorks2022 database sampel. Tabel ini difilter dengan filter baris berparameter sehingga setiap langganan berisi partisi data yang unik. Anda juga menambahkan login SQL Server yang digunakan oleh Agen Penggabungan ke daftar akses publikasi (PAL).

Membuat publikasi gabungan dan menentukan artikel

  1. Koneksi ke penerbit di SQL Server Management Studio, lalu perluas simpul server.

  2. Mulai SQL Server Agent dengan mengklik kanan di Object Explorer dan memilih Mulai. Jika langkah ini tidak memulai agen, Anda harus melakukannya secara manual dari Pengelola Konfigurasi SQL Server.

  3. Perluas folder Replikasi, klik kanan Publikasi Lokal, dan pilih Publikasi Baru. Wizard Publikasi Baru dimulai:

    Selections to start the New Publication Wizard

  4. Pada halaman Database Publikasi, pilih AdventureWorks2022, lalu pilih Berikutnya.

  5. Pada halaman Jenis Publikasi, pilih Gabungkan publikasi, lalu pilih Berikutnya.

  6. Pada halaman Jenis Pelanggan, pastikan bahwa hanya SQL Server 2008 (10.0.x) atau yang lebih baru yang dipilih, lalu pilih Berikutnya:

  7. Pada halaman Artikel , perluas simpul Tabel . Pilih tiga tabel berikut: Karyawan, SalesOrderHeader, dan SalesOrderDetail. Pilih Selanjutnya.

    Table selections on the

    Catatan

    Tabel Karyawan berisi kolom (OrganizationNode) yang memiliki tipe data hierarkis. Jenis data ini didukung untuk replikasi hanya di SQL Server 2017.

    Jika Anda menggunakan build yang lebih lama dari SQL Server 2017, pesan muncul di bagian bawah layar untuk memberi tahu Anda tentang potensi kehilangan data untuk menggunakan kolom ini dalam replikasi dua arah. Untuk tujuan tutorial ini, Anda dapat mengabaikan pesan ini. Namun, jenis data ini tidak boleh direplikasi di lingkungan produksi kecuali Anda menggunakan build yang didukung.

    Untuk informasi selengkapnya tentang mereplikasi jenis data hierarkiid , lihat Menggunakan kolom hierarkiid dalam replikasi.

  8. Pada halaman Filter Baris Tabel, pilih Tambahkan lalu pilih Tambahkan Filter.

  9. Dalam kotak dialog Tambahkan Filter , pilih Karyawan (Sumber Daya Manusia) di Pilih tabel untuk difilter. Pilih kolom LoginID, pilih panah kanan untuk menambahkan kolom ke klausa WHERE kueri filter, dan ubah klausa WHERE sebagai berikut:

     WHERE [LoginID] = HOST_NAME()  
    

    Pilih Baris dari tabel ini hanya akan masuk ke satu langganan, dan pilih OK.

    Selections for adding a filter

  10. Pada halaman Filter Baris Tabel, pilih Karyawan (Sumber Daya Manusia), pilih Tambahkan, lalu pilih Tambahkan Gabungan untuk Memperluas Filter yang Dipilih.

    a. Dalam kotak dialog Tambahkan Gabungan , pilih Sales.SalesOrderHeader di bawah Tabel gabungan. Pilih Tulis pernyataan gabungan secara manual, dan selesaikan pernyataan gabungan sebagai berikut:

    ON [Employee].[BusinessEntityID] =  [SalesOrderHeader].[SalesPersonID] 
    

    b. Di Tentukan opsi gabungan, pilih Kunci unik, lalu pilih OK.

    Selections for adding a join to the filter

  11. Pada halaman Filter Baris Tabel, pilih SalesOrderHeader, pilih Tambahkan, lalu pilih Tambahkan Gabungan untuk Memperluas Filter yang Dipilih.

    a. Dalam kotak dialog Tambahkan Gabungan , pilih Sales.SalesOrderDetail di bawah Tabel gabungan.
    b. Pilih Gunakan Penyusun untuk membuat pernyataan.
    c. Dalam kotak Pratinjau , konfirmasikan bahwa pernyataan gabungan adalah sebagai berikut:

    ON [SalesOrderHeader].[SalesOrderID] = [SalesOrderDetail].[SalesOrderID] 
    

    d. Di Tentukan opsi gabungan, pilih Kunci unik, lalu pilih OK. Pilih Selanjutnya.

    Selections for adding another join, for sales orders

  12. Pilih Buat rekam jepret segera, kosongkan Jadwalkan agen rekam jepret untuk dijalankan pada waktu berikut, dan pilih Berikutnya:

    Selection for creating a snapshot immediately

  13. Pada halaman Keamanan Agen, pilih Keamanan Pengaturan. Masukkan <Publisher_Machine_Name>\repl_snapshot dalam kotak Akun proses, berikan kata sandi untuk akun ini, lalu pilih OK. Pilih Selanjutnya.

    Selections for setting Snapshot Agent security

  14. Pada halaman Selesaikan Wizard , masukkan AdvWorksSalesOrdersMerge di kotak Nama publikasi dan pilih Selesai:

  15. Setelah publikasi dibuat, pilih Tutup. Di bawah simpul Replikasi di Object Explorer, klik kanan Publikasi Lokal dan pilih Refresh untuk melihat replikasi penggabungan baru Anda.

Menampilkan status pembuatan rekam jepret

  1. Koneksi ke penerbit di SQL Server Management Studio, perluas simpul server, lalu perluas Folder replikasi.

  2. Di folder Publikasi Lokal, klik kanan AdvWorksSalesOrdersMerge, lalu pilih Tampilkan Status Agen Rekam Jepret:

    Selections for viewing Snapshot Agent status

  3. Status pekerjaan Agen Rekam Jepret saat ini untuk publikasi muncul. Pastikan bahwa pekerjaan rekam jepret telah berhasil sebelum Anda melanjutkan ke pelajaran berikutnya.

Menambahkan login Agen Penggabungan ke PAL

  1. Koneksi ke penerbit di SQL Server Management Studio, perluas simpul server, lalu perluas Folder replikasi.

  2. Di folder Publikasi Lokal, klik kanan AdvWorksSalesOrdersMerge, lalu pilih Properti.

    a. Pilih halaman Daftar Akses Publikasi, dan pilih Tambahkan.

    b. Dalam kotak dialog Tambahkan Akses Publikasi, pilih< Publisher_Machine_Name>\repl_merge dan pilih OK. Pilih OK lagi.

    Selections for adding the Merge Agent login

Untuk informasi selengkapnya, lihat:

Membuat langganan untuk publikasi gabungan

Di bagian ini, Anda menambahkan langganan ke publikasi gabungan yang Anda buat sebelumnya. Tutorial ini menggunakan pelanggan jarak jauh (NODE2\SQL2016). Anda kemudian mengatur izin pada database langganan dan secara manual membuat rekam jepret data yang difilter untuk langganan baru.

Menambahkan pelanggan untuk publikasi gabungan

  1. Koneksi ke pelanggan di SQL Server Management Studio, dan perluas simpul server. Perluas folder Replikasi, klik kanan folder Langganan Lokal, lalu pilih Langganan Baru. Wizard Langganan Baru dimulai:

    Selections to start the New Subscription Wizard

  2. Pada halaman Publikasi , pilih Temukan Penerbit SQL Server di daftar Penerbit .

    Dalam kotak dialog Koneksi ke Server, masukkan nama instans penerbit di kotak Nama server, dan pilih Koneksi.

    Selections for adding a publisher

  3. Pilih AdvWorksSalesOrdersMerge, dan pilih Berikutnya.

  4. Pada halaman Gabungkan Lokasi Agen, pilih Jalankan setiap agen di Pelanggannya, lalu pilih Berikutnya:

  5. Pada halaman Pelanggan , pilih nama instans server pelanggan. Di bawah Database Langganan, pilih Database Baru dari daftar.

    Dalam kotak dialog Database Baru, masukkan SalesOrdersReplica di kotak Nama database. Pilih OK, lalu pilih Berikutnya.

    Selections for adding a database to the subscriber

  6. Pada halaman Gabungkan Keamanan Agen, pilih tombol elipsis (...). Masukkan <Subscriber_Machine_Name>\repl_merge dalam kotak Akun proses, dan berikan kata sandi untuk akun ini. Pilih OK, pilih Berikutnya, lalu pilih Berikutnya lagi.

    Selections for Merge Agent security

  7. Pada halaman Jadwal Sinkronisasi, atur Jadwal Agen untuk Berjalan sesuai permintaan saja. Pilih Selanjutnya.

  8. Pada halaman Inisialisasi Langganan, pilih Pada sinkronisasi pertama dari daftar Inisialisasi Saat. Pilih Berikutnya untuk melanjutkan ke halaman Jenis Langganan, dan pilih jenis langganan yang sesuai. Tutorial ini menggunakan Klien. Setelah Anda memilih jenis langganan, pilih Berikutnya lagi.

    Selections for initializing subscriptions at first synchronization

  9. Pada halaman nilai HOST_NAME, masukkan nilai adventure-works\pamela0 di kotak Nilai HOST_NAME. Selanjutnya pilih Selesai.

  10. Pilih Selesai lagi. Setelah langganan dibuat, pilih Tutup.

Mengatur izin server di pelanggan

  1. Koneksi ke pelanggan di SQL Server Management Studio. Perluas Keamanan, klik kanan Masuk, lalu pilih Masuk Baru.

    Pada halaman Umum, pilih Cari lalu masukkan< Subscriber_ Machine_Name>\repl_merge di kotak Masukkan Nama Objek. Pilih Periksa Nama, lalu pilih OK.

    Selections for setting the login

  2. Pada halaman Pemetaan Pengguna, pilih database SalesOrdersReplica dan pilih peran db_owner . Pada halaman Securables , berikan izin Eksplisit ke Alter Trace. Pilih OK.

Membuat rekam jepret data yang difilter untuk langganan

  1. Koneksi ke penerbit di SQL Server Management Studio, perluas simpul server, lalu perluas Folder replikasi.

  2. Di folder Publikasi Lokal, klik kanan publikasi AdvWorksSalesOrdersMerge, lalu pilih Properti.

    a. Pilih halaman Partisi Data, dan pilih Tambahkan.
    b. Dalam kotak dialog Tambahkan Partisi Data, masukkan adventure-works\pamela0 di kotak nilai HOST_NAME, lalu pilih OK.
    c. Pilih partisi yang baru ditambahkan, pilih Hasilkan rekam jepret yang dipilih sekarang, lalu pilih OK.

    Selections for adding a partition

Untuk informasi selengkapnya, lihat:

Menyinkronkan langganan ke publikasi gabungan

Di bagian ini, Anda memulai Agen Penggabungan untuk menginisialisasi langganan dengan menggunakan SQL Server Management Studio. Anda juga menggunakan prosedur ini untuk menyinkronkan dengan penerbit.

Mulai sinkronisasi dan inisialisasi langganan

  1. Koneksi ke pelanggan di SQL Server Management Studio.

  2. Pastikan bahwa SQL Server Agent sedang berjalan. Jika tidak, klik kanan SQL Server Agent di Object Explorer dan pilih Mulai. Jika langkah ini gagal memulai agen, Anda harus melakukannya secara manual dengan menggunakan Pengelola Konfigurasi SQL Server.

  3. Perluas simpul Replikasi . Di folder Langganan Lokal, klik kanan langganan di database SalesOrdersReplica, lalu pilih Tampilkan Status Sinkronisasi.

    Pilih Mulai untuk menginisialisasi langganan.

    Synchronization status with

Langkah berikutnya

Anda telah berhasil mengonfigurasi penerbit dan pelanggan Anda untuk replikasi penggabungan Anda. Anda juga dapat:

  1. Sisipkan, perbarui, atau hapus data dalam tabel SalesOrderHeader atau SalesOrderDetail di penerbit atau pelanggan.
  2. Ulangi prosedur ini ketika konektivitas jaringan tersedia untuk menyinkronkan data antara penerbit dan pelanggan.
  3. Kueri tabel SalesOrderHeader atau SalesOrderDetail di server lain untuk melihat perubahan yang direplikasi.

Untuk informasi selengkapnya, lihat: