mirroring database

Mirroring Database dan Replikasi dalam SQL Server

Hai.. sobat jejaring, tulisan kali ini tentang database. Database yang dicerminkan (mirroring database). Sudah pernah melakukannya? Ayo… di simak biar lebih paham. 🙂

Apa sih, pengertian Mirroring database?
Database mirroring dapat digunakan bersama dengan replikasi untuk meningkatkan ketersediaan database publikasi. Mirroring database melibatkan dua salinan dari sebuah database tunggal yang biasanya berada pada komputer yang berbeda. Pada waktu tertentu, hanya satu salinan dari database pada saat itu juga tersedia untuk klien. Salinan ini dikenal sebagai database utama (principal). Update yang dibuat oleh klien untuk database utama diterapkan pada salinan lain dari database yang dikenal sebagai database cermin (mirror). Mirroring melibatkan penerapan log transaksi dari setiap penyisipan, pengubahan, atau penghapusan dilakukan pada database utama ke database cermin.

Ada dua peran yang didefinisikan untuk SQL Server untuk mirroring database, yaitu Partner dan Witness.

mirroring database

Partner mendefinisikan bahwa server akan berpartisipasi baik sebagai database utama atau cermin untuk sesi mirroring tertentu. Tidak ada peran yang dapat didefinisikan yang menentukan bahwa mesin tertentu akan menjadi database utama atau cermin untuk sesi. Peran ditentukan dari mitra sebagai database utama. atau cermin didasarkan pada faktor-faktor lain yang akan dibahas kemudian.

Witness didefinisikan digunakan oleh mirroring database untuk memfasilitasi failover otomatis dengan membantu membangun kuorum. Yang mana Partner masih bisa melihat Witness setelah kegagalan telah terjadi (biasanya masalah jaringan dalam kasus ini) akan mengambil peran database utama dan server terisolasi akan berhenti untuk melayani database.

Replikasi adalah suatu teknik untuk melakukan duplikasi dan pendistribusian data serta objek-objek Basis Data dari satu Basis Data ke Basis Data yang lain atau dari media penyimpanan satu ke media penyimpanan yang lain dan melaksanakan sinkronisasi antara Basis Data sehingga konsistensi data dapat terjamin.

Persyaratan dan pertimbangan untuk menggunakan replikasi dengan mirroring database
Persyaratan dan pertimbangan ketika menggunakan replikasi dengan mirroring database adalah :

  • Database utama dan cermin harus berbagi Distributor. SQL Server merekomendasikan bahwa ini menjadi remote distributor, yang menyediakan lebih besar toleransi kesalahan jika publisher memiliki sebuah failover yang tidak direncanakan.
  • Publisher dan distributor harus menggunakan Microsoft SQL Server 2005 atau versi yang lebih baru.
  • Replikasi mendukung duplikasi database publikasi untuk menggabungkan replikasi dan replikasi transaksional dengan pelanggan read-only atau antrian updating pelanggan.
  • Metadata dan objek yang ada di luar database tidak akan disalin ke cermin, termasuk login, pekerjaan, server yang terhubung, dan sebagainya. Jika Anda memerlukan metadata dan objek di cermin , Anda harus menyalinnya secara manual.

Konfigurasi Replikasi dengan Mirroring database
Untuk mengkonfigurasi replikasi dan mirroring database memiliki 5 langkah tahapan sebagai berikut :

  • Mengkonfigurasi publisher.
  • Mengkonfigurasi mirroring database.
  • Mengkonfigurasi cermin untuk menggunakan Distributor yang sama dengan database utama.
  • Mengkonfigurasi agen replikasi untuk failover.
  • Tambahkan database utama dan cermin ke Replikasi Monitor.

Langkah 1 dan 2 juga dapat dilakukan dalam urutan yang berlawanan.

Untuk mengkonfigurasi mirroring database untuk database publikasi

1. Konfigurasi publisher :

  • SQL Server merekomendasikan untuk menggunakan remote distributor.
  • Anda dapat mengaktifkan database untuk snapshot dan publikasi transaksional dan menggabungkan publikasi. Untuk database cermin yang akan berisi lebih dari satu jenis publikasi, Anda harus mengaktifkan database untuk kedua jenis di node yang sama menggunakan sp_replicationdboption. Sebagai contoh, Anda bisa menjalankan panggilan prosedur berikut yang disimpan pada database utama :
exec sp_replicationdboption @dbname='<PublicationDatabase>’, @optname=’publish’, @value=trueexec sp_replicationdboption @dbname='<PublicationDatabase>’, @optname=’mergepublish’, @value=true

2. Konfigurasi mirroring database :

  • Setelah terhubung ke server utama misalnya, di Object Explorer, klik nama server untuk memperluas server tree.
  • Expands Database dan pilih database yang akan dicerminkan.
  • Klik kanan database, pilih Tasks dan kemudian klik Mirror. Ini membuka halaman kotak dialog Database Properties.
  • Untuk memulai konfigurasi mirroring, klik tmbol Configure Security untuk menjalankan Configure Database Mirroring Security Wizard.
  • Configure Database Mirroring Security Wizard akan secara otomatis membuat database mirroring endpoint (jika tidak ada) pada setiap contoh server, dan memasuki alamat server jaringan di bidang yang sesuai dengan peran server misalnya (Principal, Mirror, dan Witness).
  • Opsional, mengubah modus operasi. Ketersediaan modus operasi tertentu tergantung pada apakah Anda telah menetapkan alamat TCP untuk Witness.
  • Ketika semua langkah berhasil dilakukan, klik Start Mirroring untuk memulai mirroring :
    1. Anda sedang tersambung ke contoh server utama.
    2. Keamanan telah dikonfigurasi dengan benar.
    3. Alamat TCP fully-qualified dari contoh server utama dan cermin yang ditentukan (dibagian alamat jaringan server).
    4. Jika mode operasi diatur untuk high safety dengan failover otomatis, alamat TCP fully-qualified dari contoh server Witness juga ditentukan.
  • Setelah mirroring dimulai, Anda dapat mengubah modus operasi dan menyimpa perubahan dengan mengklik OK. Perhatikan bahwa Anda dapat beralih ke modus tinggi keamanan dengan failover otomatis hanya jika pada pertama Anda telah menetapkan alamat server Witness.

3. Konfigurasi distribusi untuk cermin. Tentukan nama cermin sebagai Publisher, dan menentukan Distributor yang sama dan folder snapshot yang menggunakan database utama. Misalnya, jika Anda mengkonfigurasi replikasi dengan prosedur yang tersimpan, jalankan sp_adddistpublisher di Distributor, dan kemudian jalankan sp_adddistributor di cermin. untuk sp_adddistpublisher :

  • Mengatur nilai parameter @publisher ke nama jaringan cermin.

  • Mengatur nilai parameter @working_directory ke folder snapshot yang digunakan oleh database utama.

4. Tentukan nama cermin untuk -PublisherFailoverPartner parameter agen. Agen Parameter ini diperlukan oleh agen berikutnya untuk mengidentifikasi cermin setelah failover :

  • Snapshot Agent (untuk semua publikasi)
  • Log Reader Agent (untuk semua publikasi transaksional)
  • Queue Reader Agent (untuk publikasi transaksional yang mendukung antrian updating pelanggan)
  • Merge Agent (untuk menggabungkan pelanggan)
  • SQL Server replication listener (replisapi.dll: untuk langganan merge disinkronkan menggunakan sinkronisasi Web)
  • SQL Merge ActiveX Control (untuk langganan merge disinkronkan dengan kontrol)

Agen perubahan parameter berlaku pada saat agen dimulai. Jika agen berjalan terus menerus, Anda harus berhenti dan restart agen. Parameter dapat ditentukan dalam profil agen dan dari command prompt.

SQL Server merekomendasikan untuk menambahkan -PublisherFailoverPartner ke profil agen, dan kemudian menentukan nama cermin dalam profil. Misalnya, jika Anda mengkonfigurasi replikasi dengan prosedur yang tersimpan :

— Execute sp_help_agent_profile in the context of the distribution database to get the list of profiles.– Select the profile id of the profile that needs to be updated from the result set.– In the agent_type column returned by sp_help_agent_profile:– 1 = Snapshot Agent; 2 = Log Reader Agent; 3 = Distribution Agent; 4 = Merge Agent; 9 = Queue Reader Agent.

 

exec sp_help_agent_profile;

 

— Setting the -PublisherFailoverPartner parameter in the default Snapshot Agent profile (profile 1).

— Execute sp_add_agent_parameter in the context of the distribution database.

exec sp_add_agent_parameter @profile_id = 1, @parameter_name = N’-PublisherFailoverPartner’, @parameter_value = N'<Failover Partner Name>’;

 

— Setting the -PublisherFailoverPartner parameter in the default Merge Agent profile (profile 6).

— Execute sp_add_agent_parameter in the context of the distribution database.

exec sp_add_agent_parameter @profile_id = 6, @parameter_name = N’-PublisherFailoverPartner’, @parameter_value = N'<Failover Partner Name>’;

5. Tambahkan database utama dan cermin ke Replikasi Monitor.

Leave a Reply