Tutorial: Mengonfigurasi replikasi antara dua server yang terhubung sepenuhnya (transaksional)
Berlaku untuk: SQL Server
Replikasi transaksional adalah solusi yang baik untuk masalah pemindahan data antara server yang terus terhubung. Dengan menggunakan Wizard Replikasi, Anda dapat dengan mudah mengonfigurasi dan mengelola topologi replikasi.
Tutorial ini menunjukkan kepada Anda cara mengonfigurasi topologi replikasi transaksional untuk server yang terus terhubung. Untuk informasi selengkapnya tentang cara kerja replikasi transaksional, lihat gambaran umum replikasi transaksional.
Apa yang akan Anda pelajari
Tutorial ini mengajarkan Anda untuk menerbitkan data dari satu database ke database lainnya dengan menggunakan replikasi transaksional.
Dalam tutorial ini, Anda akan belajar cara:
- Buat penerbit melalui replikasi transaksional.
- Buat pelanggan untuk penerbit transaksi.
- Memvalidasi langganan dan mengukur latensi.
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 SQL Server Express atau SQL Server Compact. Edisi ini tidak dapat menjadi penerbit replikasi.
- Database
AdventureWorks2022
sampel. Untuk meningkatkan keamanan, database sampel tidak diinstal secara default.
Di server pelanggan (tujuan), instal SQL Server edisi apa pun, kecuali SQL Server Compact. SQL Server Compact tidak dapat menjadi pelanggan dalam replikasi transaksional.
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.
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 transaksional
Di bagian ini, Anda membuat publikasi transaksi dengan menggunakan SQL Server Management Studio untuk menerbitkan subset tabel Produk yang difilter dalam AdventureWorks2022
database sampel. Anda juga menambahkan login SQL Server yang digunakan oleh Agen Distribusi ke daftar akses publikasi (PAL).
Membuat publikasi dan menentukan artikel
Sambungkan ke penerbit di SQL Server Management Studio, lalu perluas simpul server.
Klik kanan SQL Server Agent dan pilih Mulai. Agen SQL Server harus berjalan sebelum Anda membuat publikasi. Jika langkah ini tidak memulai agen Anda, Anda harus melakukannya secara manual dari Pengelola Konfigurasi SQL Server.
Perluas folder Replikasi, klik kanan folder Publikasi Lokal, dan pilih Publikasi Baru. Langkah ini memulai Panduan Publikasi Baru:
Pada halaman Database Publikasi, pilih
AdventureWorks2022
, lalu pilih Berikutnya.Pada halaman Jenis Publikasi, pilih Publikasi transaksional, lalu pilih Berikutnya:
Pada halaman Artikel , perluas simpul Tabel dan pilih kotak centang Produk . Kemudian perluas Produk dan kosongkan kotak centang di samping ListPrice dan StandardCost. Pilih Selanjutnya.
Pada halaman Filter Baris Tabel, pilih Tambahkan.
Dalam kotak dialog Tambahkan Filter , pilih kolom SafetyStockLevel . Pilih panah kanan untuk menambahkan kolom ke klausa pernyataan filter WHERE dari kueri filter. Kemudian ketik secara manual di pengubah klausul WHERE sebagai berikut:
WHERE [SafetyStockLevel] < 500
Pilih OK, lalu pilih Berikutnya.
Pilih kotak centang Buat rekam jepret segera dan pertahankan rekam jepret yang tersedia untuk menginisialisasi langganan , dan pilih Berikutnya:
Pada halaman Keamanan Agen, kosongkan kotak centang Gunakan pengaturan keamanan dari Agen Rekam Jepret.
Pilih Pengaturan Keamanan untuk Agen Rekam Jepret. Masukkan <Publisher_Machine_Name>\repl_snapshot dalam kotak Akun proses, berikan kata sandi untuk akun ini, lalu pilih OK.
Ulangi langkah sebelumnya untuk mengatur <Publisher_Machine_Name>\repl_logreader sebagai akun proses untuk Agen Pembaca Log. Kemudian pilih OK.
Pada halaman Selesaikan Wizard , ketik AdvWorksProductTrans di kotak Nama publikasi, dan pilih Selesai:
Setelah publikasi dibuat, pilih Tutup untuk menyelesaikan wizard.
Anda mungkin mengalami kesalahan berikut jika SQL Server Agent Anda tidak berjalan saat Mencoba membuat publikasi. Kesalahan ini menunjukkan bahwa publikasi Anda berhasil dibuat tetapi Agen Rekam Jepret Anda tidak dapat memulai. Jika ini terjadi, Anda harus memulai SQL Server Agent, lalu memulai Agen Rekam Jepret secara manual. Bagian berikutnya memberikan instruksi.
Menampilkan status pembuatan rekam jepret
Sambungkan ke penerbit di SQL Server Management Studio, perluas simpul server, lalu perluas folder Replikasi .
Di folder Publikasi Lokal, klik kanan AdvWorksProductTrans, lalu pilih Tampilkan Status Agen Rekam Jepret:
Status pekerjaan Agen Rekam Jepret saat ini untuk publikasi muncul. Verifikasi bahwa pekerjaan rekam jepret telah berhasil sebelum Anda melanjutkan ke bagian berikutnya.
Jika Agen SQL Server Anda tidak berjalan saat Anda membuat publikasi, Anda akan melihat bahwa Agen Rekam Jepret tidak pernah dijalankan saat Anda memeriksa status Agen Rekam Jepret untuk publikasi Anda. Jika demikian, pilih Mulai untuk memulai Agen Rekam Jepret Anda:
Jika Anda melihat kesalahan di sini, lihat Memecahkan masalah kesalahan Agen Rekam Jepret.
Menambahkan login Agen Distribusi ke PAL
Sambungkan ke penerbit di SQL Server Management Studio, perluas simpul server, lalu perluas folder Replikasi .
Di folder Publikasi Lokal, klik kanan AdvWorksProductTrans, lalu pilih Properti. Kotak dialog Properti Publikasi muncul.
a. Pilih halaman Daftar Akses Publikasi, dan pilih Tambahkan.
b. Dalam kotak dialog Tambahkan Akses Publikasi, pilih< Publisher_Machine_Name>\repl_distribution, dan pilih OK.
Untuk informasi selengkapnya, lihat Konsep pemrograman replikasi.
Membuat langganan ke publikasi transaksi
Di bagian ini, Anda menambahkan pelanggan ke publikasi yang sebelumnya Anda buat. Tutorial ini menggunakan pelanggan jarak jauh (NODE2\SQL2016), tetapi Anda juga dapat menambahkan langganan secara lokal ke penerbit.
Membuat langganan
Sambungkan ke penerbit di SQL Server Management Studio, perluas simpul server, lalu perluas folder Replikasi .
Di folder Publikasi Lokal, klik kanan publikasi AdvWorksProductTrans, lalu pilih Langganan Baru. Wizard Langganan Baru dimulai:
Pada halaman Publikasi , pilih AdvWorksProductTrans, lalu pilih Berikutnya:
Pada halaman Lokasi Agen Distribusi, pilih Jalankan semua agen di Distributor, lalu pilih Berikutnya. Untuk informasi selengkapnya tentang langganan penarikan dan pendorongan, lihat Berlangganan publikasi.
Pada halaman Pelanggan, jika nama instans pelanggan tidak ditampilkan, pilih Tambahkan Pelanggan, lalu pilih Tambahkan Pelanggan SQL Server dari daftar drop-down. Langkah ini membuka kotak dialog Sambungkan ke Server . Masukkan nama instans pelanggan lalu pilih Sambungkan.
Setelah pelanggan ditambahkan, pilih kotak centang di samping nama instans pelanggan Anda. Lalu pilih Database Baru di bawah Database Langganan.
Kotak dialog Database Baru muncul. Masukkan ProductReplica dalam kotak Nama database, pilih OK, lalu pilih Berikutnya:
Pada halaman Keamanan Agen Distribusi, pilih tombol elipsis (...). Masukkan <Publisher_Machine_Name>\repl_distribution dalam kotak Akun proses, masukkan kata sandi untuk akun ini, pilih OK, lalu pilih Berikutnya.
Pilih Selesai untuk menerima nilai default pada halaman yang tersisa dan selesaikan wizard.
Mengatur izin database di pelanggan
Sambungkan ke pelanggan di SQL Server Management Studio. Perluas Keamanan, klik kanan Masuk, lalu pilih Masuk Baru.
a. Pada halaman Umum, di bawah Nama Masuk, pilih Cari dan tambahkan login untuk <Subscriber_Machine_Name>\repl_distribution.
b. Pada halaman Pemetaan Pengguna, berikan keanggotaan db_owner masuk untuk database ProductReplica.
Pilih OK untuk menutup kotak dialog Masuk Baru.
Menampilkan status sinkronisasi langganan
Sambungkan ke penerbit di SQL Server Management Studio. Perluas simpul server, lalu perluas folder Replikasi .
Di folder Publikasi Lokal, perluas publikasi AdvWorksProductTrans, klik kanan langganan di database ProductReplica, lalu pilih Tampilkan Status Sinkronisasi. Status sinkronisasi langganan saat ini muncul:
Jika langganan tidak terlihat di bawah AdvWorksProductTrans, pilih kunci F5 untuk me-refresh daftar.
Untuk informasi selengkapnya, lihat:
Mengukur latensi replikasi
Di bagian ini, Anda menggunakan token pelacak untuk memverifikasi bahwa perubahan sedang direplikasi ke pelanggan dan untuk menentukan latensi. Latensi adalah waktu yang diperlukan agar perubahan yang dilakukan di penerbit muncul kepada pelanggan.
Sambungkan ke penerbit di SQL Server Management Studio. Perluas simpul server, klik kanan folder Replikasi , lalu pilih Luncurkan Monitor Replikasi:
Perluas grup penerbit di panel kiri, perluas instans penerbit, lalu pilih publikasi AdvWorksProductTrans .
a. Pilih tab Token Tracer.
b. Pilih Sisipkan Pelacak.
c. Lihat waktu yang berlalu untuk token pelacak di kolom berikut: Publisher ke Distributor, Distributor ke Pelanggan, Total Latensi. Nilai Tertunda menunjukkan bahwa token belum mencapai titik yang ditentukan.
Untuk informasi selengkapnya, lihat:
- Mengukur latensi dan memvalidasi koneksi untuk replikasi transaksional
- Menemukan kesalahan dengan agen replikasi transaksional