Tutorial Mirroring MSSQL Server 2014

Implementasi Microsoft SQL Server 2014 Database

Pada pembahasan kali ini, kita akan sedikit mengulik tentang fungsi mirroring MSSQL Server 2014. Dimana dengan menerapkan mirroring maka server database utama (principal)) akan meemiliki backupan server lain (mirror) yang siap digunakan jika sewaktu-waktu ketika server utama mengalami kerusakan, data yang ada pada server backup tersebut akan selalu mengikuti apa yang ada di server utama.Sehingga kita tidak perlu khawatir lagi kehilangan data ketika server database utama mengalami kerusakan. Untuk pembahasan resminya bisa dibaca disini, okay langsung saja sikat miring 
 
 
 
 
 

Lakukan Langkah berikut pada server principal, mirror, dan witness menggunakan user Administrator

 

1.       Configure OS

-          Matikan windows Firewall

-          Pastikan antivirus ataupun network Allow port 1433 dan 5022

 

2.       Buat User Account Baru

Search > Computer management > Local User and Groups> Users > klik kanan new user

 

 

Kemudian tambahkan user baru yang akan digunakan dan uncheck seperti gambar diatas. Setelah ditambahkan ganti account type dengan cara masuk ke Search > Setting > Accounts > Other People  klik pada nama user pilih change account type menjadi administrator.

 

 

Pada setiap  server (principal, mirror dan witness) daftarkan username dan password yang sama. Ini akan digunakan untuk mengakses SQL antar server.

3.       Configure login SSMS

Tetap menggunakan user yang sama yang digunakan untuk membuat user baru. Kemudian masuk ke SSMS menggunakan Windows Authentication atau pun sa


 

Setelah berhasil login, masuk ke security > klik kanan pada login > new login


 

Pada login name pilih search > masukkan nama user yang baru dibuat kedalam kotak nomor 3 kemudian klik check names pilih OK. 

 

maka akan terisi seperti gamabar berikut:


 

Kemudian klik server roles pada kiri atas dan checklist sysadmin


 

Kemudian klik seculables > klik search > plilih The server…… kemudian plih Ok



 

4.       Configure host

Masuk ke directory C:\Windows\System32\drivers\etc  kemudian edit file hosts dengan mendaftarkan 2 server lainnya. Berikut contohnya: 


 

Pada file host tersebut telah didaftarkan 2 server lain yang berhubungan dengan mirroring ini (blok warna hitam merupakan nama server lain).

5.       Configure logon service

Pada CMD masukan services.msc kemudian cari SQL Server (MSSQLSERVER) dan SQL Server Agent (MSSQLSERVER). Kemudian pada setiap service tersebut klik dua kali pada nama service dan pindah ke tab logon, pada tab logon klik browse dan masukkan nama user yang telah ditambahkan. Selanjutnya sesuaikan password dan klik Ok. Jika sudah berhasil maka kolom Log On As akan berubah sesuai dengan user yang telah di masukkan.


 

Kemudian restart service SQL Server (MSSQLSERVER).

 

 

 

Lakukan Langkah berikut pada server principal, mirror, dan witness menggunakan user OS yang baru saja dibuat:

 

1.       Checking connection antar server

Masuk kesetiap server (principal, mirror, dan witness) menggunakan user yang baru dibuat kemudian lakukan telnet dengan skema berikut:

-          Server principal telnet kearah IP server principal, mirror, dan witness dengan port 1433 dan 5022

-          Server mirror telnet kearah IP server principal, mirror, dan witness dengan port 1433 dan 5022

-          Server witness telnet kearah IP server principal, mirror, dan witness dengan port 1433 dan 5022

 

2.       Testing login Windows Authentication

Buka SSMS kemudian coba untuk login ke SSMS menggunakan Windows Authentication

 

 

Pada Server Name masukkan IP dari server yang di tuju. Diharapkan setiap server dapat melakukan login ke SMSS server lain dengan skema seperti berikut:

-          Server principal berhasil login SQL ke arah server principal, mirror dan witness

-          Server mirror berhasil login SQL ke arah server principal, mirror dan witness

-          Server witness berhasil login SQL ke arah server principal, mirror dan witness

Berikut adalah contoh login Windows Authentication yang berhasil mengakses SQL pada server principal, mirror dan witness.

 

 



Backup dan restore database


1.       Lakukan proses Backup database Full dan transactional Log

Masuk kedalam server principal (server yang databasenya akan di mirror) menggunakan user baru kemudian login ke SQL menggunakan mode Windows Authentication. Kemudian klik kanan pada nama database > Task > backup kemudian pada backup type pilih Full  > Ok.

 


 

Proses di atas merupakan proses backup full, kemudian lanjutkan ke proses backup transactional log dengan proses yang sama hanya saja dibedakan pada backup type pilih Transactional Log. Pastikan nama file backupnya dibedakan agar mudah dalam mengidentifikasi backup full dan backup transactional log.  


 

2.       Proses Restore Database

Masuk kedalam server Mirror (server yang ditujukan sebagai mirror dari principal) menggunakan user baru kemudian login ke SQL menggunakan mode Windows Authentication. Pada proses restore ini pertama kali kita melakukan restore full dengan cara Klik kanan pada Databases > Restore database

 


Pilih file dari hasil Backup Full,

 

Kemudian pada kiri atas pindah ke tab Options, dan pada Recovery state ubah menjadi RESTORE WITH NORECOVERY kemudian klik OK


 

Jika berhasil maka akan muncul nama database yang telah kita restore seperti berikut:


 

Selanjutnya kita akan restore Transaction Log dengan cara klik kanan pada nama database di atas > task > Restore > Transaction Log

 

 

Kemudian pilih File hasil backup transaction log,


 

Selanjutnya pada tab kiri atas pindah ke Optional dan recovery state pilih seperti di bawah ini:


 

Kemudian OK.

 

 

Proses Mirroring antar server

 

Masuk kedalam server principal (server yang databasenya akan di mirror) menggunakan user baru kemudian login ke SQL menggunakan mode Windows Authentication. 


  

Kemudian klik kanan > Task > Mirror pada nama database yang akan di mirroring.


 

Maka akan muncul tampilan berikut:


 

Selanjutnya klik Configure Security….


 

Kemudian Klik Next>


 

Pilih Yes, kemudian Next>


 

Sesuaikan checkbox seperti diatas dan kemudian Next>


 

Sesuaikan dengan configurasi di atas dan klik Next>


 

Window di atas digunakan untuk menghubungkan ke mirror server instance.  selanjutnya klik connect, untuk mendaftarkan server mirrornya

 

 

Setelah klik connect maka akan muncul window connect to server, pada kotak server name masukkan IP atau nama server dari server mirror kemudian login dengan mode windows authentication. 


 

Jika berhasil connect maka akan pada kotak mirror server instance akan terisi sesuai yang digunakan untuk login, kemudian pilih next.


 

Window di atas digunakan untuk menghubungkan ke Witness server instance.  selanjutnya klik connect, untuk mendaftarkan server Witnessnya. Lakukan hal yang sama seperti menghubungkan ke server mirror. 


 

Yaitu dengan masukkan IP atau nama server dari server mirror pada kotak Sever name kemudian login dengan mode windows authentication.


 

Selanjutnya pilih next>


 

Selanjutnya pilih next>


 

Selanjutnya Pilih Finish.

Jika configurasi mirror berhasil maka akan tampil window seperti dibawah ini :


 

Selanjutnya pilih close, dan aka nada tampilan window seperti berikut:


Pilih Start Mirroring,


 

Jika muncul tampilan di atas pilih Yes.


 

sampai disini proses mirroring telah selesai di tandai dengan keterangan pada kotak Status. Selanjutnya bisa di klik Ok.

 

 

Testing Failover mirroring

 

 

Pada testing failover ini kita akan melakukan 3 skenario yaitu:

-          Testing failover menggunakan fitur dari SQL server

-          Testing failover dengan cara Stop dan start service Principal

-          Testing failover dengan cara Restart OS Principal

Untuk melihat perubahan state dari server principal atau pun mirror maka kita akan menggunakan server witness sebagai jumper untuk mengetahui statenya. Sebagai catatan saat server berstate sebagai mirror maka data yang ada di dalam table database tersebut tidak dapat diakses.

Berikut ini adalah state awal dari server principal dan mirror

 

1.       Testing failover menggunakan fitur dari SQL server

klik kanan pada database principal > Task > mirror


Maka akan tampil window berikut:


 

Selanjutnya klik pilhan failover, maka akan muncul window berikut:


 

Selanjutnya pilih Yes,

Maka setelah proses di atas kita dapat mengecek Kembali stat pada setiap sql server melalui server jumper berikut ini hasilnya:


Dapat dilihat state principal dan mirror pada kedua database tersebut telah berubah, menunjukan proses failover telah berhasil. Kemuidan kita kembalikan state principal seperti semula dengan cara yang sama seperti diatas. Maka hasilnya akan menjadi seperti berikut:

 

 

 

 

 

 

ERROR Solution In Recovery

Troubleshoot Error In Recovery - Jika pada keterangan disamping nama database terdapat tulisan inrecovery. Biasanya error ini menyebabkan database tidak bisa di akses dan diterapkan mirror. jika terdapat hal semacam ini dapat menjalankan query berikut:

alter database Namadatabase set partner off

 

 

ERROR 1418 Solution

1.      Pastikan koneksi antar server tidak ada kenadala (check by telnet antar sever port 1433 dan 5022) .

2.      Pastikan menggunakan user dan pass yang sama pada setiap server dan logon service aplikasi SQL Server (MSSQLSERVER) dan SQL Server Agent (MSSQLSERVER).

3.      Periksa nama domain yang terdaftar, pastikan tidak ada nama server yang terpotong jika ada yang terpotong maka sebaiknya diganti menggunakan IP.

     Error ini biasanya akan muncul ketika gagal melakukan mirroring, khususnya setelah melakukan start :

 

    sarannya jika muncul error tersebut lakukan ulang proses mirroring dan pada saat            muncul window diatas pilih Do Not Start Mirroring. kemudian rubah pendaftaran        servername menggunakan IP.


Sekian tutorial kali ini, maafkan jika kepanjangan dan banyak bagian gambar yang saya tutupin hehe efek capek ngulang :( . jika ada yang kurang jelas langsung komentar aja ya, Terimakasih


Best Regards,
Heri Sulistiyo

Komentar