Wednesday, September 27, 2006

Transaction Log shipping pada Microsoft SQL Server 2005

Artikel ini adalah merupakan kumpulan dari artikel-artikel yang membahas masalah Disasters Recovery Plan (DRP) pada Microsoft SQL Server. Dalam artikel ini saya coba uraikan mengenai step by step Log Shipping configuration pada SQL Server 2005.

Untuk menggunakan metode Log Shipping ini ada beberapa hal yang harus kita perhatikan dan harus kita siapkan, diantaranya adalah :
1. Siapkan 2 server yang spesifikasinya hampir sama dengan server primer termasuk softwarenya. (1 server digunakan sebagai server sekunder dan 1 server lagi kita gunakan sebagai server untuk monitoring Log Shipping ini, kalau dirasa kita tidak punya dana untuk pengadaan server ini, kita siapkan saja 1 server yang spesifkasinya tidak terlalu jauh dengan server primer, dan untuk monitoring Log Shipping ini kita gunakan server sekunder)
2. Pastikan account yang dipakai sebagai startup SQL/SQLAgent Services di semua server adalah merupakan account domain. (Tidak direkomendasikan kita gunakan account local system sebagai account untuk startup SQL/SQLAgent Services, untuk penjelasan ini nanti kita bahas di topik lain).
3. Siapkan satu folder pada server primer dan share folder tersebut dengan memberikan full akses pada account/user yang kita pakai sebagai startup SQL/SQLAgent Services. (Boleh gunakan Group everyone, tetapi tidak di rekomendasikan, karena secara default semua user dalam domain termasuk kedalam group everyone)
4. Pastikan metode recovery model pada database kita sudah pada posisi Full/Bulk-Load. (Untuk merubah/melihatnya klik kanan pada database yang akan kita lakukan Log Shipping, kemudian klik properties, pilih option, kemudian lihat pada bagian recovery model, kalau masih simple harus dirubah menjadi Full/Bulk-Load.



Cara membuat konfigurasi Log Shipping
1. Klik kanan pada database yang akan kita buat Log Shipping-nya, kemudian pilih Task -> Ship Transaction Log



2. Klik “Enable this as a primary database in a log shipping configuration”



3. Klik tombol “Backup Setting” untuk membuat konfigurasi dari backup yang akan dijalankan pada server primer
4. Isi kolom “Network path to backup folder” dengan nama sharing dari folder yang telah kita buat.
5. Isi kolom “If the backup folder is located on the primary server”, dengan nama folder local yang ada di server.
6. Delete files older than : Isi dengan lamanya waktu yang dibutuhkan oleh SQL, sebelum file transaction log dihapus
7. Alert if no backup occurs within : Isi dengan lamanya waktu yang diperbolehkan SQL apabila terjadi kegagalan backup, sebelum SQL mengirimkan notifikasi
8. Job Name : Isi dengan nama Jobs
9. Schedule : Dipakai untuk merubah schedule dari backup yang berjalan
10. Setelah itu klik tombol OK



11. Kemudian klik tombol Add untuk membuat konfigurasi dari server tujuan (server sekunder)



12. Secondary server instance : Isi dengan meng-klik tombol connect untuk memilih server tujuan (server sekunder)
13. Secondary database : Diisi dengan nama database yang dipakai sebagai tempat untuk me-restore database pimer yang ada pada datasase sekunder (server sekunder)
14. Pada Tab Initialize Secondary Database, klik “Yes, generate a full backup …” apabila kita akan membuat full backup terlebih dahulu, sebelum Log Shipping ini dijalankan dan klik tombol restore option, apabila kita akan menempatkan file database di directory yang lain pada server sekunder. Sedangkan kalau kita sudah punya full backup untuk database yang bersangkutan kita bisa pilih option “Yes, restore an existing backup …” kemudian pilih file dari full backup database tersebut.





15. Pada Tab Copy Files, isi destination folder dengan nama folder pada server sekunder yang dipakai sebagai tempat menyimpan file transaction log yang di generate oleh SQL.
16. Delete copied files after : Diisi dengan lamanya waktu yang diperboleh untuk menghapus file-file log yang sudah lama.
17. Job name : Diisi dengan nama Job
18. Klik tombol schedule, apabila kita akan merubah schedule dari job yang kita buat.



19. Pada Tab Restore Transaction Log : Pilih option Standby Mode
20. Delay restoring backup at least : Diisi dengan waktu yang diperbolehkan untuk SQL agar menunda proses restore.
21. Alert if no restore occurs : Diisi dengan lamanya waktu yang diperbolehkan SQL untuk menunda proses backup, sebelum timbul notifikasi.
22. Klik tombol schedule apabila kita akan merubah schedule dari jon yang kita buat



23. Klik option Use a Monitor server Instance
24. Klik tombol Setting untuk menambahkan server yang berfungsi untuk memonitor jalannya Log Shipping ini



25. Klik tombol connect untuk menambahkan nama server yang berfungsi memonitor jalannya Log Shipping
26. Klik option “By impersonating the proxy account” sebagai cara untuk konek ke server tersebut
27. Delete history after : Diisi dengan lamanya waktu yang diperbolehkan SQL sebelum history dari job ini di hapus
28. Job Name : Diisi dengan nama Job





29. Setelah semua step tersebut kita set, klok tombol OK
30. SQL akan memberikan status dari Log Shipping Configuration yang kita buat tadi.





31. Setelah itu pada server sekunder kita akan terbentuk satu database dengan status standby/read only



32. Cara memonitor log shipping adalah dengan memilih menu report, dengan sebelumnya klik pada server tempat Log Shipping tersebut jalan, kemudian pilih Transaction Log Shipping Status



33. Dalam report tersebut kita bisa melihat status dari Log Shipping yang kita jalankan





Deni Kusdeni
Application Integration Specialist, INTIMEDIA
deni@intimedia.com, dkusdeni@gmail.com

Microsoft SQL Server 2000 Log Shipping Problem

Suatu hari, seorang teman bertanya kepada saya mengenai Log Shipping yang dia buat, “Kenapa Log Shipping-nya error out of sync dan bagaimana cara mengatasinya?”
Berikut ini adalah artikel untuk mejawab pertanyaan tersebut diatas.

1. Melihat error yang terjadi dalam Log Shipping adalah dengan melalui SQL Enterprise Manager Console yang dipakai sebagai Monitorng Server untuk proses Log Shipping



2. Pada Windows sebelah kanan akan terlihat tanda silang merah, sebagai tanda Log Shipping yang kita buat ada masalah.



3. Double Klik pada Log Shipping yang error tersebut, setelah itu akan muncul status dari Log Shipping yang kita buat. Pada contoh gambar dibawah adalah terjadi error pada proses backup dari Log Shippig ini, mengapa demikian ? Ini dikarenakan kita membuat setting agar SQL hanya akan bisa mengambil data (backup) selama 45 menit ke belakang dari waktu sekarang. (lihat gambar). Tetapi kalau kita lihat dari backup yang harus diambil oleh SQL adalah selama 1030 menit ke belakang, sehingga SQL tidak dapat memenuhi permintaan tersebut.





4. Untuk mengatasi error tersebut, atau supaya SQL bisa mengambil (backup) data selama durasi tersebut adalah dengan cara menaikkan Alert Threshold untuk proses backup menjadi >= waktu yang dibutuhkan oleh SQL



5. Setelah kita naikkan (dalam contoh menjadi 1035 menit), maka SQL akan dapat membuat backup untuk waktu ke belakang yang kita definisikan tersebut, dan error symbol pada Log Shipping monitoring akan hilang



6. Apabila yang error (out of sync) adalah pada proses restore, maka yang harus kita naikkan waktunya adalah yang ada pada tab Destination, dengan membuat durasi >= waktu yang dibutuhkan oleh SQL

7. Setelah error tersebut kita solve, maka Log Shipping pada SQL akan jalan normal kembali dan kita bisa memperkecil dari durasi untuk tresh hold tadi





Deni Kusdeni
Application Integration Specialist, INTIMEDIA
deni@intimedia.com, dkusdeni@gmail.com

Monday, September 25, 2006

Virtual Vending nempel di BLOG

Ada yang baru di halaman depan BLOG saya minggu ini... Ya ternyata ada sebuah frame kecil tempat menyimpan link ke Virtual Vending. Bagi mereka yang belum tau apa itu Virtual Vending bisa masuk ke sini http://www.v-vending.com

Frame ini baru di approve oleh owner Virtual Vending minggu ini, karena kalau nggak di approve jendela dari virtual vending ini tidak akan muncul alias hanya blank saja.

Dengan link ke virtual vending ini, orang yang akan belanja bisa langsung transaksi melalui BLOG saya ini tanpa harus masuk ke web sitenya Virtual Vending terlebih dulu, sehingga user tidak harus bolak-balik apabila akan melakukan transaksi.

Selamat memasuki era gaya belanja online yang benar-benar baru.