Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Konfigurasi Replikasi Transaksional SQL Server

Replikasi Transaksional di SQL Server adalah salah satu teknik Replikasi yang paling umum digunakan untuk menyalin atau mendistribusikan data ke berbagai tujuan. Pada artikel sebelumnya, kita telah membahas Replikasi SQL Server dan cara kerja Replikasi secara internal. Sekarang tujuan kami adalah untuk melihat cara Mengonfigurasi Replikasi Transaksional di SQL Server menggunakan pendekatan Cadangan dan cara menambah atau menghapus Artikel ke Replikasi dengan benar. Tanpa tindakan yang tepat, kami berisiko membuat snapshot tidak valid dan menghadapi keharusan untuk mengonfigurasi ulang Replikasi.

Administrasi Replikasi Transaksional

Dalam artikel saya sebelumnya, kami telah melalui petunjuk langkah demi langkah tentang item di bawah ini:

  • Konfigurasikan Distribusi
  • Konfigurasikan Publikasi dengan opsi Cuplikan
  • Konfigurasikan Langganan dengan opsi Snapshot

Saat mengonfigurasi Replikasi, kami telah mengonfigurasi Distributor terlebih dahulu. Kemudian kami melanjutkan ke Buat Publikasi dan Langganan. Untuk menjatuhkan atau membersihkan Replikasi, kita perlu melakukan proses sebaliknya. Pertama, kita perlu menghapus Langganan, lalu Publikasi, dan, terakhir, menghapus Distributor atau database distribusi.

Pada artikel ini, kami mencoba menghapus Replikasi Transaksional di SQL Server yang telah kami konfigurasikan sebelumnya. Kami akan menggunakan pendekatan Pencadangan dan menambahkan atau menghapus artikel dari Replikasi dengan cara berikut:

  • Hentikan Langganan
  • Jatuhkan Publikasi
  • Drop Distributor atau database distribusi
  • Bersihkan Replikasi sepenuhnya jika salah satu langkah di atas tidak berfungsi dengan benar
  • Konfigurasikan Replikasi dengan Cadangan Basis Data
  • Lepaskan artikel dari Replikasi menggunakan pendekatan Wizard dan T-SQL
  • Tambahkan artikel baru ke Replikasi menggunakan pendekatan Wizard dan T-SQL
  • Tambahkan artikel Prosedur Tersimpan dan pelajari perbedaan antara artikel Tabel dan artikel Prosedur Tersimpan

Hentikan Langganan

Untuk menghapus Replikasi yang telah dikonfigurasi, kita harus Menghapus Langganan terlebih dahulu.

Di SSMS, sambungkan ke instance Publisher> Replikasi > Publikasi Lokal . Klik kanan pada Langganan> Hapus atau Lepas Berlangganan:

SQL Server akan meminta Anda untuk mengonfirmasi tindakan Anda:

Klik Ya untuk membatalkan Langganan. Ini akan menghentikan Langganan sepenuhnya.

Dalam penyiapan saya saat ini, baik Penerbit dan Pelanggan berada di instans yang sama. Oleh karena itu, tidak ada permintaan yang dikirim untuk terhubung ke instance Pelanggan untuk validasi. Jika kami memilikinya di instance SQL Server yang berbeda, itu akan meminta untuk terhubung ke instance Pelanggan untuk memvalidasi sebelum menghapus Pelanggan.

Menjatuhkan Publikasi secara internal menggunakan sp_droppublication prosedur dan kita dapat menggunakan prosedur ini untuk secara manual menjatuhkan Publikasi melalui pendekatan T-SQL

Jatuhkan Publikasi

Setelah Langganan dihapus, kita dapat melanjutkan dan melepaskan Publikasi . Klik kanan AdventureWorks_Pub dan pilih Hapus dari menu:

Anda akan melihat pesan yang meminta Anda untuk mengonfirmasi tindakan itu. Perhatikan bahwa Anda akan menghapus Publikasi. Namun, semua catatan yang direplikasi ke database Pelanggan tidak akan dihapus. Kami harus menghapus database secara manual untuk membersihkan catatan yang direplikasi itu. Klik Ya .

Menjatuhkan Publikasi secara internal menerapkan sp_droppublication prosedur.

Lepaskan Distributor atau Basis Data Distribusi

Sebelumnya kami menyebutkan bahwa database distribusi adalah database sistem. Oleh karena itu, kami tidak dapat menghapusnya dengan mengklik kanan pada database dan memilih opsi hapus seperti dengan database pengguna. Jika kita klik kanan pada database distribusi, kita hanya mendapatkan opsi di bawah ini:

Ketika kita ingin menghapus database distribusi, pertama kita harus klik kanan pada Replikasi simpul> Nonaktifkan Penerbitan dan Distribusi .

Ini akan membuka Wizard.

Secara default, opsi kedua (Tidak, lanjutkan menggunakan server ini sebagai Penerbit ) dipilih untuk menghindari menjatuhkan semua publikasi secara tidak sengaja di server.

Dalam kasus kami, kami hanya memiliki satu Publikasi, dan kami ingin membersihkannya. Oleh karena itu, kami memilih opsi pertama – Ya, nonaktifkan Penerbitan di server ini . Ini akan menghapus semua Publikasi bersama dengan Langganan jika belum dihapus bersama dengan menonaktifkan Distributor.

Kami dapat menggunakan wizard ini sendiri untuk membersihkan semuanya jika Server kami hanya memiliki satu Replikasi yang dikonfigurasi. Namun, jika ada beberapa Replikasi yang dikonfigurasi, kami menghapus Replikasi Transaksional di SQL Server dengan mengikuti langkah-langkah standar yang dibagikan di atas.

Sekarang, kita perlu memilih opsi pertama Ya, nonaktifkan penerbitan di server ini , dan klik Berikutnya .

Di jendela baru, centang kedua opsi:Nonaktifkan penerbitan dan distribusi dan Buat file skrip dengan langkah-langkah…

Untuk membuat file skrip, Anda harus menyediakan jalur untuk menyimpannya.

Klik Berikutnya dan lihat opsi yang dipilih di wizard. Periksa dan pastikan Anda telah memilih semuanya dengan benar.

Klik Selesai .

Menghapus database distribusi secara internal menggunakan sp_dropdistributor prosedur.

Setelah Distributor dinonaktifkan, kita dapat melihat bahwa database distribusi dikeluarkan dari database sistem.

Bersihkan Replikasi Sepenuhnya jika salah satu dari Langkah di atas tidak Bekerja dengan Benar

Jika Langganan atau Publikasi dihentikan melalui pendekatan lain, kami akan melakukan penghapusan Replikasi Transaksional yang tidak konsisten di SQL Server dan mendapatkan banyak kesalahan. Untuk membersihkan semua residu Langganan atau Publikasi, kita dapat menggunakan prosedur sistem sp_removedbreplication .

exec_spremovedbreplication

Jalankan prosedur ini hanya jika masih ada masalah Replikasi setelah mencoba semua pendekatan lain yang disebutkan. Prosedur Tersimpan sp_removedbreplication harus dijalankan pada database Publisher atau dari database master dan menggunakan perintah di bawah ini setelah mengganti @dbname dengan nama Publisher Database.

exec_spremovedbreplication @dbname

Konfigurasikan Replikasi menggunakan Pendekatan Pencadangan

Setelah menghapus Replikasi sepenuhnya, mari kita konfigurasikan ulang Replikasi Transaksional di SQL Server menggunakan Pendekatan Cadangan. Ini melibatkan langkah-langkah di bawah ini:

  • Konfigurasikan Distributor
  • Buat Publikasi
  • Ubah properti Publikasi untuk mengaktifkan pembuatan Langganan dari Cadangan Penuh atau Diferensial.
  • Ambil Cadangan Penuh Penerbit dan pulihkan sebagai Pelanggan.
  • Konfigurasikan Langganan dan mulai inisialisasi dari Cadangan.

Kami telah melakukan sebagian besar langkah sebelumnya ketika mengkonfigurasi Replication. Oleh karena itu, kami tidak akan membahas secara detail tentang langkah-langkah tersebut di sini.

Konfigurasikan Distributor &Publikasi

Lihat petunjuk langkah demi langkah dari artikel sebelumnya tentang cara mengonfigurasi Distribusi dan Publikasi menggunakan panduan Buat Publikasi. Untuk mempelajari skrip T-SQL yang digunakan oleh wizard untuk membuat Distribusi dan Publikasi, cukup buat skrip ke file selama langkah terakhir wizard dan jangan jalankan skrip dengan menghapus centang pada opsi "Buat Publikasi" seperti yang ditunjukkan di bawah ini .

Sekarang buka file skrip yang disimpan di Jendela Permintaan baru untuk membuat Distributor dan Publikasi menggunakan Skrip tersebut:

Mohon perhatikan baris komentar kedua - ini menyatakan bahwa semua nilai kata sandi yang kami masukkan di wizard telah dikonversi ke NULL atau string kosong untuk Alasan Keamanan. Lihat baris yang disorot dengan @password =nilai kosong. Ganti itu dengan nilai kata sandi yang benar, lakukan hal yang sama untuk bagian lain dengan kata sandi, dan jalankan skripnya.

Script berhasil dieksekusi. Kita dapat melihat bahwa eksekusi skrip telah membuat database distribusi dan semua tabel sistem di dalamnya. Di akhir pesan, kita dapat melihat bahwa pekerjaan Agen Pembaca Log telah dibuat dan diluncurkan juga.

Jika diperlukan, Anda dapat menyimpan hasil untuk mempelajari tentang semua tabel, tampilan, dan prosedur penting dalam database distribusi. Informasi ini akan berguna untuk pemecahan masalah lebih lanjut.

Setelah eksekusi skrip berhasil, kita dapat melihat database distribusi dan publikasi berhasil dibuat.

Ubah Properti Publikasi untuk Mengaktifkan Pembuatan Langganan dari Cadangan Penuh atau Diferensial

Jika ukuran database sangat kecil, waktu yang dibutuhkan untuk mengirim Snapshot Awal akan lebih cepat.

Di sisi lain, membuat Replikasi Transaksional di SQL Server menggunakan Snapshot tidak efisien dalam kasus berikut:

  1. Jika databasenya besar (300 GB atau lebih). Waktu yang diperlukan untuk mengirim Snapshot awal akan terlalu lama.
  2. Jika Pelanggan berada di lokasi yang berbeda dengan bandwidth jaringan rendah. Kemudian proses snapshot awal akan berlangsung selama beberapa hari.

Dengan demikian, membuat Cadangan Penuh, mentransfernya melalui FTP atau secara fisik ke lokasi lain, memulihkan cadangan tersebut, dan menginisialisasi Pelanggan akan jauh lebih cepat dibandingkan dengan pendekatan Snapshot.

Untuk mengaktifkan Publikasi untuk mendukung inisialisasi dari Cadangan, kita harus memodifikasi salah satu properti Publikasi. Hal ini dapat dilakukan baik melalui SSMS atau T-SQL.

Pendekatan SSMS

Klik kanan AdventureWorks_pub publikasi dan pilih Properti :

Klik Opsi Berlangganan :

Setel Benar untuk Izinkan Inisialisasi dari file cadangan dan klik Oke . Ini akan memungkinkan kita untuk menginisialisasi dari Cadangan Penuh dan Diferensial.

Pendekatan T-SQL

Dalam T-SQL, kita dapat memanggil prosedur sp_changepublication untuk mengubah properti ini.

Script untuk mengubah properti ini di bawah ini:

USE AdventureWorks
GO
exec sp_changepublication @publication = 'AdventureWorks_pub', @property = 'allow_initialize_from_backup', @value = 'true'

Ambil Cadangan Penuh Penerbit dan Pulihkan sebagai Pelanggan

Faktor kunci yang perlu diperhatikan bahwa kita harus melakukan Full Backup setelah mengimplementasikan properti Publikasi di atas. Jika ukuran database sangat besar, kita dapat mengambil Full Backup dan memulihkannya dalam mode RECOVERY di instance Subscriber, dan mengambil backup Diferensial setelah melakukan perubahan konfigurasi di atas dan memulihkannya di database Subscriber dengan mode NORECOVERY.

Konfigurasikan Langganan dan Mulai Inisialisasi dari Cadangan

Sekali lagi, lihat petunjuk Langkah-demi-Langkah. Kita perlu membuat skrip yang diperlukan tetapi tidak menjalankannya. Masalahnya, kami akan Menginisialisasi Langganan dari Cadangan Penuh atau Diferensial menggunakan skrip T-SQL saja. Saya membuat skrip tersebut selama pembuatan Berlangganan terakhir kali. Lihat file yang terbuka di bawah.

Catatan :Skrip untuk pembuatan Langganan harus dijalankan dari database Publisher. Oleh karena itu, buka jendela Kueri yang menghubungkan ke instance Publisher.

Kami perlu membuat beberapa perubahan agar Langganan dapat diinisialisasi dari cadangan:

  • Ubah @sync_type nilai dari otomatis untuk menginisialisasi dengan cadangan
  • Berikan sandi yang benar untuk sandi yang diganti dengan NULL atau string kosong. Karena saya telah menggunakan akun Layanan Agen di dalam server, saya tidak perlu mengubah kata sandi.
  • Tambahkan parameter @backupdevicetype dan @backupdevicename dan berikan jalur ke pencadangan Penuh atau Diferensial di Server Penerbit (skrip akan dijalankan di sana).

Setelah selesai, skrip kita akan terlihat seperti ini:

Jalankan skrip untuk menyelesaikan konfigurasi Langganan dan kami akan menerima penyelesaian skrip yang berhasil seperti yang ditunjukkan di bawah ini.

Seperti yang ditunjukkan oleh status, tugas Agen Distribusi SQL Server Agent dibuat dan diluncurkan saat membuat Langganan.

Jadi, kami telah berhasil membuat Replikasi kami menggunakan pendekatan Cadangan. Sekarang kami dapat memverifikasi Langganan yang tersedia.

Luncurkan Replication Monitor dan klik kanan Subscriber. Ini akan menunjukkan status Replikasi:

Seperti yang kita lihat, semua data telah berhasil diinisialisasi dari Backup tanpa perlu menjalankan pekerjaan Snapshot Agent. Karena tidak ada transaksi aktif yang terjadi di database, kami mendapatkan pesan “Tidak ada transaksi yang direplikasi tersedia” di Monitor Replikasi saat ini.

Lepaskan Artikel dari Replikasi

Setelah mempelajari cara mengkonfigurasi Replikasi Transaksional di SQL Server melalui wizard Replikasi atau skrip T-SQL, sekarang kita dapat memeriksa cara menghapus artikel dari Replikasi melalui kedua metode ini.

Menggunakan Wizard

Klik kanan pada AdventureWorks_pub Publikasi> Properti . Klik Artikel untuk melihat daftar artikel yang termasuk dalam Replikasi.

Secara default, ini akan mencantumkan objek database dalam format OBJECT_NAME (SCHEMA_NAME). Untuk tujuan pengujian, lepaskan tabel Person.ContactType dari Replikasi.

Untuk itu, cukup hapus centang pada kotak sebelum ContactType (Orang). SQL Server akan menampilkan pesan peringatan atau konfirmasi:

Seperti yang dijelaskan, jika ada snapshot yang saat ini tersedia, snapshot tersebut akan membatalkan snapshot tersebut karena perubahan dalam artikel.

Karena kami telah menginisialisasi menggunakan pendekatan Cadangan dan belum menggunakan Snapshots, kami dapat dengan aman mengabaikan pesan ini dan mengklik Ya untuk menghapus Artikel tabel ini dari Replikasi. Klik Oke untuk menyelesaikan penghapusan artikel dari Replikasi.

Sekarang Person.ContactType tabel dihapus dari Replikasi. Setiap perubahan yang terjadi pada Penerbit tidak akan dikirim ke database Pelanggan. Kita dapat menguji ini dengan INSERT/UPDATE/DELETE record pada Person.ContactType tabel.

Menggunakan T-SQL

Cara lain adalah dengan menghapus artikel dari Replikasi dengan bantuan sp_droparticle prosedur.

USE [AdventureWorks]
GO
EXEC sp_droparticle 
  @publication = N'AdventureWorks_pub', 
  @article = N'ContactType',
  @force_invalidate_snapshot = 1;
GO

Tambahkan Artikel Baru ke Replikasi melalui Wizard atau Pendekatan TSQL

Dalam beberapa kasus (seperti pemeliharaan tabel), kami mungkin perlu menghapus beberapa artikel dan menambahkannya kembali ke Replikasi setelah pemeliharaan selesai.

Kami telah berhasil mempelajari cara menghapus artikel dari Replikasi. Mari kita pertimbangkan cara menambahkan artikel baru ke Replication. Kami akan menambahkan Person.ContactType meja yang telah kami hapus sebelumnya kembali ke Replication.

Menggunakan Wizard

Untuk menambahkan artikel tabel kembali ke Replikasi, klik kanan Publikasi > Properti > Artikel . Ini akan menampilkan daftar artikel yang tersedia di Publikasi.

Kami tidak dapat menemukan Person.ContactType tabel – layar hanya menampilkan tabel yang merupakan bagian dari Replikasi. Untuk melihat semua tabel yang tersedia di database Publisher, hapus centang Tampilkan hanya artikel yang dipilih dalam daftar untuk melihat semua tabel.

Sekarang, kita dapat melihat Person.ContactType tabel terdaftar.

Seperti yang telah kita bahas sebelumnya, semua tabel tanpa Kunci Utama akan memiliki Lingkaran Merah ikon yang menunjukkan bahwa tabel ini tidak dapat disertakan dalam Replikasi baik melalui pendekatan Wizard atau T-SQL.

Periksa ContactType (Orang) tabel untuk menambahkannya kembali ke Replikasi dan klik OK .

Tabel ditambahkan lagi ke Replication. Namun, kita perlu mencari metode untuk mengirim snapshot awal untuk artikel tabel yang baru ditambahkan ini.

Jika Anda telah membaca artikel sejauh ini, Anda pasti sudah menebaknya dengan benar – jalankan saja Pekerjaan Agen Snapshot untuk mengirim snapshot awal untuk tabel ini.

Ayo lakukan sekarang – klik kanan pada Publikasi > lihat Agen Snapshot status.

Klik Mulai untuk mengirim cuplikan artikel yang memenuhi syarat. Kirim data tersebut ke database Distribusi, dan terakhir, ke database Pelanggan.

Pendekatan T-SQL

Kami dapat melakukan tindakan serupa menggunakan sp_addarticle prosedur.

Script di bawah ini akan menambahkan Artikel ke Replikasi.

use [AdventureWorks]
GO
exec sp_addarticle @publication = N'AdventureWorks_pub', @article = N'ContactType', @source_owner = N'Person', @source_object = N'ContactType'
, @type = N'logbased', @description = null, @creation_script = null, @pre_creation_cmd = N'drop', @schema_option = 0x000000000803509F
, @identityrangemanagementoption = N'manual', @destination_table = N'ContactType', @destination_owner = N'Person', @vertical_partition = N'false'
, @ins_cmd = N'CALL sp_MSins_PersonContactType'
, @del_cmd = N'CALL sp_MSdel_PersonContactType'
, @upd_cmd = N'SCALL sp_MSupd_PersonContactType'
GO

Kami sebelumnya telah memperhatikan bagaimana Replikasi bekerja untuk artikel tabel dengan menerapkan 3 prosedur yang dibuat dalam database Pelanggan untuk menangani operasi INSERT/UPDATE dan DELETE.

Menggunakan pendekatan T-SQL, kita tahu bagaimana prosedur ini direferensikan. Jika diperlukan, kita dapat mengganti nama objek, nama tabel tujuan, atau prosedur default. Untuk itu, kami akan melakukan perubahan pada sp_addarticle prosedur.

CATATAN :Jika kita melakukan modifikasi pada Replikasi, kita harus mendokumentasikan semuanya dengan benar. Jika tidak, itu dapat menyebabkan bencana di kemudian hari.

Tambahkan Artikel Prosedur Tersimpan dan Pelajari Perbedaan antara Artikel Tabel dan Artikel Prosedur Tersimpan

Untuk menambahkan Prosedur Tersimpan ke Replikasi, kita perlu membuka Artikel halaman dan periksa Prosedur Tersimpan yang diperlukan untuk membuatnya Direplikasi. Kami dapat melakukan hal yang sama untuk Tampilan , Tampilan Terindeks , atau Fungsi Buatan Pengguna juga.

Untuk mempelajari lebih lanjut tentang perbedaan antara Tabel Artikel vs Tampilan/ Prosedur Tersimpan/ Tampilan Terindeks/Fungsi yang Ditentukan Pengguna, kita dapat menambahkan satu dari setiap artikel untuk setiap kategori menggunakan T-SQL:

Menambahkan Artikel Prosedur Tersimpan Baru ke Replikasi

use [AdventureWorks]
exec sp_addarticle @publication = N'AdventureWorks_pub', @article = N'uspGetBillOfMaterials', @source_owner = N'dbo'
, @source_object = N'uspGetBillOfMaterials', @type = N'proc schema only', @description = null, @creation_script = null
, @pre_creation_cmd = N'drop', @schema_option = 0x0000000008000001, @force_invalidate_snapshot = 1
, @destination_table = N'uspGetBillOfMaterials', @destination_owner = N'dbo'

Menambahkan Artikel Tampilan Baru ke Replikasi

use [AdventureWorks]
exec sp_addarticle @publication = N'AdventureWorks_pub', @article = N'vVendorWithContacts', @source_owner = N'Purchasing'
, @source_object = N'vVendorWithContacts', @type = N'view schema only', @description = null, @creation_script = null, @pre_creation_cmd = N'drop'
, @schema_option = 0x0000000008000001, @destination_table = N'vVendorWithContacts', @destination_owner = N'Purchasing'
GO

Menambahkan Artikel Tampilan Terindeks Baru ke Replikasi

use [AdventureWorks]
exec sp_addarticle @publication = N'AdventureWorks_pub', @article = N'vStateProvinceCountryRegion', @source_owner = N'Person'
, @source_object = N'vStateProvinceCountryRegion', @type = N'indexed view schema only', @description = null, @creation_script = null
, @pre_creation_cmd = N'drop', @schema_option = 0x0000000008000001, @force_invalidate_snapshot = 1
, @destination_table = N'vStateProvinceCountryRegion', @destination_owner = N'Person'

Menambahkan artikel Fungsi Buatan Pengguna baru ke Replikasi

use [AdventureWorks]
exec sp_addarticle @publication = N'AdventureWorks_pub', @article = N'ufnGetStock', @source_owner = N'dbo', @source_object = N'ufnGetStock'
, @type = N'func schema only', @description = null, @creation_script = null, @pre_creation_cmd = N'drop', @schema_option = 0x0000000008000001
, @force_invalidate_snapshot = 1, @destination_table = N'ufnGetStock', @destination_owner = N'dbo'

Kami menggunakan sp_addarticle prosedur untuk menambahkan semua jenis artikel ke Replikasi dengan parameter input yang diperlukan dan opsi mengubah @type yang disertakan parameter.

Kami juga dapat menambahkan artikel ini ke Publikasi dengan mengklik kanan Publikasi > Properti > Artikel dan menambahkannya ke Publikasi.

Properti Artikel Tabel

Sekarang, mari kita ubah properti Artikel melalui Artikel menu di Publikasi properti:

Klik Person.ContactType favorit kami tabel> Properti Artikel . Akan ada opsi untuk mengubah Properti Artikel untuk Tabel ini saja atau semua Tabel yang termasuk dalam Replikasi. Untuk pengujian, kami memilih Set Properties of Highlighted Table Article untuk melihat properti Person.ContactType tabel.

Lihat semua opsi yang tersedia untuk tabel ini. Artikel:

Salin Objek dan Setelan ke Pelanggan dan Pengiriman Pernyataan adalah pengaturan yang paling penting untuk Replikasi. Kita harus sangat berhati-hati untuk mengubah salah satu parameter ini.

Klik format pengiriman INSERT\UPDATE\DELETE untuk mendapatkan opsi di bawah ini.

  • Jangan Replika pernyataan INSERT\UPDATE\DELETE – untuk menyesuaikan Replikasi agar tidak mengirim perintah khusus ke database Pelanggan
  • Pernyataan INSERT\UPDATE\DELETE – untuk mengirim pernyataan INSERT\UPDATE\DELETE langsung ke Pelanggan alih-alih merekonstruksi data dari log transaksional
  • CALL – Jalankan prosedur tersimpan bawaan yang ditunjukkan di atas di sp_addarticle untuk mereplikasi data.
  • XCALL – Jalankan prosedur tersimpan yang diperluas untuk mereplikasi perubahan.

Properti Artikel Prosedur Tersimpan

Klik Properti Artikel pada salah satu Prosedur Tersimpan untuk melihat Properti

Salah satu properti kunci dari Prosedur Tersimpan adalah opsi Replika – lihat opsi yang tersedia di bawah ini:

  • Hanya definisi Prosedur Tersimpan – hanya mereplikasi perubahan struktur DDL Prosedur Tersimpan. Ini adalah opsi default untuk Prosedur Tersimpan apa pun.
  • Eksekusi Prosedur Tersimpan – gunakan opsi ini untuk mengurangi beban Replikasi. Ia melakukan semua perubahan melalui Eksekusi Prosedur Tersimpan pada Pelanggan tanpa mengirimkan perintah individual. Kita dapat melihat tentang fitur ini untuk menyelesaikan masalah kinerja sambil mereplikasi perubahan data yang sangat besar di artikel saya berikutnya.
  • Eksekusi dalam transaksi serial SP – opsi hibrida untuk memilih Eksekusi prosedur Tersimpan hanya jika prosedur dijalankan dalam transaksi serial. Jika tidak, ini akan direplikasi sebagai perintah DML individual.

Lihat Properti Artikel

Klik Properti Artikel untuk Tampilan apa pun untuk mendapatkan Properti :

Properti Artikel Tampilan Terindeks

Klik Properti Artikel untuk salah satu Tampilan Terindeks untuk Properti :

Properti Artikel Fungsi Buatan Pengguna

Klik Properti Artikel pada Fungsi Buatan Pengguna apa pun untuk Properti its

Properti Tampilan, Tampilan Terindeks, dan Fungsi Buatan Pengguna hampir sama. Oleh karena itu, kami tidak dapat banyak menyesuaikannya.

Kesimpulan

Terima kasih telah membaca artikel penuh daya lainnya yang terkait dengan Replikasi. Hari ini, kami telah mengklarifikasi detail tentang menghapus Langganan, Publikasi, Basis Data Distribusi, dan membersihkan Replikasi sepenuhnya bahkan jika kami mengalami masalah.

Kami telah mengonfigurasi Replikasi yang baru diinisialisasi dari cadangan dan menguji cara menambahkan artikel baru ke Replikasi atau menghapusnya darinya. Dalam pekerjaan lebih lanjut dengan database dan, khususnya, menemukan perbedaan di antara mereka, Anda akan sangat diuntungkan oleh alat profesional. Bundel Bandingkan dbForge untuk SQL Server mengidentifikasi dan menganalisis semua perbedaan tersebut dan melaporkannya.

Dalam artikel kami berikutnya, kami akan membahas masalah Replikasi yang sering dihadapi dan cara mengatasinya secara profesional.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Mengembalikan beberapa tabel dari prosedur tersimpan

  2. Bisakah Saya Membatasi Koma Beberapa Baris Menjadi Satu Kolom?

  3. bisakah kita memiliki kunci asing yang bukan kunci utama di tabel lain?

  4. ATN2() Contoh di SQL Server

  5. Hindari duplikat dalam kueri INSERT INTO SELECT di SQL Server