Pengertian Database

Database adalah sekumpulan data yang diperlakukan sebagai sebuah unit. Tujuan database adalah untuk meyimpan dan menggunakan kembali (untuk diolah) informasi.

Arsitektur Database Oracle – Koneksi ke Server

User bisa tersambung dengan server bisa melalui salah satu dari tiga cara: 1.User login pada sistem operasi yang menjalankan instance oracle, kemudian menjalankan aplikasi atau tool untuk mengakses database pada sistem operasi tersebut pula.

Sekilas Arsitektur Server Database Oracle

Ada tiga struktur pokok yang ada pada arsitektur server database oracle: 1. Memori struktur 2.Proses Struktur 3.Storage Struktur. Sebuah System Database Oracle selalu berisi dua hal : sebuah Database Oracle dan sebuah instance database.

Instance : Database Configuration

Setiap sebuah Instance diasosiasikan sebuah database, dan hanya satu database. Apabila terdabat banyak instance dalam sebuah server maka masing-masing instance tersebut mendefinisikan database tertentu. Sebuah Instance tidak bisa di share.

Monday, March 16, 2015

SQL Server 1.e - Mirorring SQL Server - Implemetasi Mirroring SQL Server

Implementasi




Database mirroring memiliki proses implementasi lebih mudah bila dibandingkan dengan failover
clustering. Hal ini tidak memerlukan konfigurasi hardware khusus dan dapat diterapkan dan dikelola
sepenuhnya melalui SQL Server. Berikut adalah langkah-langkah dasar Anda harus melakukan untuk mengatur
Database mirroring:
1. Buat endpoint untuk komunikasi basis data.
2. Backup database pada server principal.
3. Restore database pada server mirror.
4. Atur server utama sebagai partner pada server mirror.
5. Atur server mirror sebagai partner pada server utama.
Salah satu kelemahan database mirroring dibandingkan dengan failover clustering adalah bahwa Anda harus mengatur mirroring database untuk setiap database, sedangkan pada failover clustering,
seluruh instance diprotect. Karena mirroring dikonfigurasi untuk masing-masing database(principal dan mirror),
Anda harus memastikan bahwa data eksternal yang dibutuhkan oleh database mirror juga tersalin ke
server mirror. Misalnya, Anda perlu menyalin login dari database master pada server principal ke database master pada server mirror,
dan juga memastikan bahwa setiap pekerjaan yang dibutuhkan oleh database mirror
berada di server mirror. Juga, karena database mirroring membuat salinan database, Anda akan
perlu menggunakan dua kali lebih banyak ruang disk dari yang Anda lakukan dengan failover clustering.
Keunggulan Mirroring memiliki salinan duplikat dari database membuat mirroring menjadi solusi yang jauh lebih baik daripada failover clustering ketika Anda khawatir tentang pemulihan bencana dan kegagalan disk. Mirorring dalam SQL Server 2008 termasuk fitur baru. Mirroring yang akan memperbaiki page data yang corupt dengan menyalin page-page tersebut dari partner jika setiap corupt telah terdeteksi.

Snapshots Untuk Reporting
Untuk menggunakan database mirroring sebagai solusi report, Anda juga harus menggunakan fitur database snapshot, yang mengharuskan SQL Server 2008 versi Enterprise. Anda dapat menggunakan
snapshot database dalam hubungannya dengan mirroring database untuk memberikan laporan statis
solusi dengan mengambil snapshot reguler dari database mirror. User tidak dapat terhubung
secara langsung ke database mirror untuk melakukan query, tapi dapat membuat snapshot dari mirror
Database pada waktu tertentu, yang akan memungkinkan pengguna untuk terhubung ke database snapshot.

Dalam rangka untuk menjaga arus data dan ukuran snapshot, Anda harus me-refresh snapshot secara berkala dengan menciptakan snapshot baru dan mengarahkan lalu lintas data di sana.
Kemudian Anda dapat menghapus snapshot lama stelah open transaction selesai semua.
Snapshot database akan terus berfungsi setelah failover terjadi; Anda hanya akan kehilangan konektivitas sementara selama failover database di-restart. Anda mungkin perlu untuk men-drop snapshot dan menangguhkan pelaporan sampai server lain dibawa online.

Redirect dalam Event sebuah Failover
Transparent client redirect adalah fitur yang disediakan dalam Microsoft Data Access Component(MDAC) yang bekerja dengan database mirroring  untuk memungkinkan aplikasi client untuk secara otomatis meridirect dalam kasus failover. Ketika melakukan koneksi ke database yang berpartisipasi dalam database mirroring,  MDAC akan mengenali ada database mirror dan menyimpan informasi koneksi yang diperlukan untuk menyambung ke database mirror, bersama dengan database utama.

Jika koneksi ke database utama gagal, aplikasi akan mencoba untuk menyambung kembali.
Jika aplikasi tidak dapat menyambung kembali ke database utama, koneksi ke database mirror dicoba.  Ada satu peringatan utama ketika bekerja dengan klien redirect transparan:
Aplikasi ini harus terhubung ke database utama sebelum failover telah terjadi untuk menerima informasi koneksi tentang mirror.  Jika aplikasi tidak dapat terhubung ke server utama, itu tidak akan pernah diarahkan ke mirror.

Friday, March 6, 2015

SQL Server 1.d - Mirorring SQL Server - dua jenis mirroring SQL Server

Database Mirroring
Solusi High Availability selain menggunakan Failover Cluster juga bisa menggunakan mirroring.
Teknik database mirroring dapat dipahami sangat sederhana: Prakteknya miroring menjaga dua salinan database secara terpisah yang saling tersinkron antara satu dengan yang lainnya sehingga jika kehilangan satu copy, dapat melanjutkan pekerjaan dengan copy-an DB yang lain.
Mirroring umumnya digunakan pada disk Array (RAID).

Syarat utama
Sama seperti failover clustering yang memiliki terminologi sendiri, Mirroring memiliki terminologi sendiri pula. Hati-hati dalam memahami dan menggunakan istilah-istilah ini,
karena terkadang dalam banyak tulisan tentang teknologi database terdapat kata yang sama namun menunjukkan makna yang agak berbeda.
Menggunakan terminologi yang tepat untuk SQL Server akan membantu memastikan bahwa setiap orang memiliki pemahaman yang sama ketika membahas High Availability.
Key term (Istilah kunci) yang sering dipakai dalam mirorring adalah sebagai berikut:
Principal: Sumber Server yang berisi database fungsional aktif dalam Mirrored Pair.
Mirror: Server Sasaran yang berisi database tujuan pada Mirrored Pair.
Witnes: Server Opsional yang memantau Principal dan Mirror.
Partner: Server Opposite ketika mengacu ke server pokok dan cermin.
Endpoint: Obyek yang terikat pada sebuah protokol jaringan yang memungkinkan SQL Server untuk membandingkan municate seluruh jaringan.








Sekilas Database Mirroring


Database mirroring diperkenalkan pada SQL Server 2005 dan menyediakan dua tingkat perlindungan:
yang pertama mode performance yang tinggi(high performance) dan yang ke dua mode keamanan yang tinggi (high safety) . Kedua mode memiliki konsep yang sama, tetapi pada urutan transaksi yang di commit sedikit berbeda. Dengan mode performa yang tinggi, transaksi di commit pada server principal sebelum ke server mirror. Hal ini memungkinkan aplikasi terus bekerja tanpa harus menunggu transaksi di commit pada server mirror dan dengan mode keamanan yang tinggi, transaksi di commit ke server mirror dulu sebelum di commit pada server principal.
Hal ini menyebabkan aplikasi menunggu sampai transaksi telah dilakukan pada dua server (principal & mirror) sebelum di lanjutkan ke transaksi lainnya.
Kedua mode ini (high performance dan high safety) membutuhkan database utama yang akan ditetapkan untuk full recovery.

Kita akan membahas keuntungan dan kekurangan dalam menggunakan teknik masing-masingdi atas.

Tuesday, March 3, 2015

SQL Server 1.c Failover Clustering (lanjutan)

Failover Clustering


Gambar 1


Failover clustering digunakan untuk melindungi ketersediaan (availability) instance pada semua DB SQL Server.  Meskipun node server men-share disk atau resource yang sama, tapi hanya satu server yang menjadi pemilik (ownership) untuk membaca dan menulis dari group resource pada waktu tertentu. Jika failover(kegagalan) terjadi, ownership ditransfer ke node lain, dan SQL Server kembali diwaktu yang dibutuhkan untuk membawa database kembali online. Failover biasanya memakan hitungan waktu tidak pasti ,sekitar hitungan detik hingga beberapa menit, tergantung pada ukuran database dan jenis transaksi yang sedang berlangsung selama kegagalan.

Agar database untuk kembali ke kondisi yang siap pakai selama failover harus melalui fase Redo dan Undo, fase Redo untuk men-commit transaksi yang telah tercatat dan fase Undo untuk me-roll back transaksi yang belum tercatat. Pemulihan sistem yang cepat adalah fitur Enterprise Edition yang diperkenalkan pada SQLServer 2005 yang memungkinkan aplikasi untuk mengakses database segera setelah fase Redo selesai. Karena cluster muncul di jaringan sebagai single server (server tunggal), tidak perlu untuk mengarahkan aplikasi ke server yang berbeda selama failover. Pemulihan yang cepat ini membuat proses penanganan kegagalan yang cukup cepat dan tidak mengganggu yang pada akhirnya menghasilkan waktu downtime yang sebentar selama kegagalan.

Jumlah node yang dapat ditambahkan ke cluster tergantung pada edisi sistem operasi (OS) serta edisi SQL Server, dengan maksimal 16 node menggunakan SQL Server 2008 Enterprise Edition yang berjalan pada Windows Server 2008. Failover Clustering hanya didukung dalam Edisi Enterprise dan Standar SQL Server. Jika Anda menggunakan Edisi Standar, Anda dibatasi untuk cluster 2-node.
Karena failover clustering juga tergantung pada OS, Anda harus menyadari keterbatasan untuk setiap edisi OS juga. Windows Server 2008 hanya mendukung penggunaan failover clustering pada Edisi Enterprise, Datacenter, dan Itanium.Windows Server 2008 Enterprise dan Datacenter Edisi kedua mendukung 16-node cluster, sedangkan edisi Itanium hanya mendukung cluster 8-node.

Dalam rangka untuk menyebarkan beban kerja beberapa database di server, setiap node di cluster dapat memiliki ownership dari  beberapa resource dan instance SQL Server. Setiap server yang memiliki sumber daya disebut sebagai active node , dan setiap server yang tidak memiliki sumber daya disebut sebagai pasif node.

Ada dua tipe dasar konfigurasi cluster: one cluster-node dan multi-node cluster, multi-node berisi dua atau lebih aktif node dengan satu atau lebih pasif node, dan one cluster-node berisi satu node aktif dengan satu atau lebih pasif node. Gambar-1 menunjukkan konfigurasi cluster single-node standar yang biasa disebut sebagai aktif / pasif konfigurasi.

Jadi jika beberapa node aktif memungkinkan Anda untuk memanfaatkan semua server Anda, mengapa tidak akan Anda membuat semua server di cluster aktif? Jawaban: kendala resource(sumber daya). Dalam cluster 2-node, jika salah satu node memiliki kegagalan, node lain yang tersedia harus memproses beban normal serta beban node gagal. Untuk alasan ini, itu(membuat 1 server aktif dan 1 server pasif) dianggap praktek terbaik dalam cluster failover.
 Gambar 2


 Gambar 3


Gambar-2 menunjukkan konfigurasi multi-node cluster yang sehat berjalan dengan hanya dua node. Jika Node 1 memiliki kegagalan, seperti yang ditunjukkan pada Gambar-3 Node 2 sekarang bertanggung jawab untuk kedua instance dari SQL Server. Sementara konfigurasi ini secara teknis akan bekerja, jika Node 2 tidak memiliki kapasitas untuk menangani beban kerja dari kedua kasus,server Anda dapat berjalan lambat, akhirnya menyebabkan user kecewa.

Jadi, bagaimana hal ini bekerja? Sebuah sinyal heartbeat dikirim antara node untuk menentukan ketersediaan satu sama lain. Jika salah satu node belum menerima pesan dalam jangka waktu tertentu (jumlah retries), failover dimulai dan node failover utama mengambil kepemilikan sumber daya.
Ini adalah tanggung jawab untuk mempertahankan catatan dari bagian masing-masing node selama proses ini. Pemeriksaan heartbeat dilakukan di tingkat OS serta tingkat SQL Server.
OS yang berada dalam kontak konstan dengan node lain, memeriksa   dan ketersediaan server.
Untuk alasan ini, pivate network digunakan pada heartbeat antar node untuk mengurangi kemungkinan failover terjadi karena masalah jaringan yang terkait.

SQL Server mengirimkan pesan yang dikenal sebagai LooksAlive dan IsAlive. LooksAlive adalah melakukan pengecek-an gangguan sekurang-kurangnya setiap 5 detik untuk memastikan layanan.  Cek IsAlive berjalan setiap 60 detik dan mengeksekusi query SELECT @@ServerName terhadap node aktif untuk memastikan bahwa SQL Server dapat menanggapi permintaan yang masuk.

Implementasi
Sebelum menginstal SQL Server, yang harus dilakukan adalah memastikan bahwa konfigurasi OS Windows dan hardware telah mendukung teknologi cluster. Salah satu poin/syarat yang berat ketika membuat cluster failover adalah mencari daftar kompatibilitas perangkat keras / Hardware Compatibility List (HCL) untuk memastikan dukungan dan solusi hardware yang diterapkan.
Persyaratan ini telah dihapus pada Windows Server 2008. Sekarang kita bisa menjalan tool validasi cluster yang baru untuk melakukan semua pengecekan requirement(kebutuhan) untuk memastikan berjalannya OS pada konfigurasi yang didukung. Tool validasi cluster tidak hanya digunakan untuk mengkonfirmasi konfigurasi server saja, namun dapat digunakan memecahkan masalah setelah penyiapan juga.

Dari perspektif SQL Server, proses instalasi sangat mudah. Jika Anda yang akrab dengan memasang failover cluster di SQL Server 2005, pada SQL Server 2008 telah benar-benar berubah. Pertama Anda menjalankan instalasi pada satu node untuk membuat satu cluster-node. Maka Anda menjalankan instalasi pada setiap node yang tersisa, memilih opsi Add Node selama setup. Untuk menghapus node dari cluster, Anda menjalankan setup.exe pada server yang perlu menjadi dihapus dan pilih opsi Hapus Node. Proses instalasi baru memungkinkan untuk lebih pengelolaan granular dari node, yang memungkinkan Anda untuk menambah dan menghapus node tanpa membawa menyusuri seluruh cluster. Proses instalasi baru ini juga memungkinkan Anda untuk melakukan patching dan bergulir upgrade dengan downtime minimal.

Jangan takut failover clustering. Dibutuhkan perencanaan ekstra di depan, tetapi sekali telah berhasil dilaksanakan, pengelolaan lingkungan berkerumun benar-benar tidak banyak berbeda dari lingkungan SQL lainnya. Sama seperti contoh SQL telah disampaikan kepada aplikasi di lapisan jaringan virtual, akan disampaikan kepada administrator dengan cara ini juga. Selama Anda menggunakan semua nama maya benar ketika terhubung ke instance SQL, itu akan hanya menjadi administrasi seperti biasa. 

Kelebihan dan Kekurangan Failover Clustering

Seperti solusi teknologi lainnya, failover clustering membawa manfaat tertentu, tetapi dengan biaya.
Manfaat failover clustering meliputi berikut ini:
  - Kehilangan data nol
  - Perlindungan seluruh contoh
  - Pemulihan cepat
  - Failover otomatis

Harga yang Anda bayar untuk manfaat ini adalah sebagai berikut:
   - Failover clustering tidak melindungi terhadap kegagalan disk
   - Tidak ada standby database tersedia untuk pelaporan
   - Khusus Hardware diperlukan
   - Failover clustering umumnya mahal untuk diterapkan
   - Tidak ada duplikat data untuk laporan atau pemulihan bencana
 
sealkazzsoftware.blogspot.com resepkuekeringku.com