Tuesday, May 18, 2004

Database Hacking

Pada jaman dahulu kala, ketika Novell NetWare masih versi 3.12 (atau malah masih 2.x?), saya mencoba memasang server Oracle (mungkin versi 6) di disk NetWare. Akses dari klien PC. Lucunya, saat itu saya nekat membiarkan concurrent access dari beberapa klien ke database tersebut. Selama beberapa hari, saya dibingunkan oleh masalah database-crash. Setiap hari reinstall. Konyol sekali memang. Cara belajar trial-by-error yang sangat tidak dianjurkan. Dimana letak masalahnya? Locking. Seharusnya urusan database engine untuk menangani locking, sementara pada waktu itu saya memaksa sharing file-file database (yang entah kenapa, diijinkan oleh NetWare). Maka ketika klien A dan B menulis ke database pada waktu yang bersamaan, database rusak. (boyz and girlz, do not try these at home ;) ).

Dengan berlalunya waktu, saya kenal Debian, dan saya masih suka memaksa memasang berbagai engine database komersial di atas platform Debian GNU/Linux. Not so bad. Salah satu hasilnya adalah kontribusi ke DB2 HowTo.

Oracle-pun pernah saya hack agar lebih mudah dipasang di Linux, lagi-lagi Debian. Tidak ada publikasi tentang ini. Tapi intinya, saya menyalin berkas biner dari instalasi lama (yang sudah berjalan baik), kemudian untuk membuat instalasi baru, salinan berkas tadi saya letakkan di suatu tempat dan langsung bisa diaktifkan. Belum saya coba apakah cara ini portabel. Lebih nekat lagi, saya membuat script untuk membuat instance baru dengan teknik kopi-biner tersebut. Lebih cepat daripada cara official.

Setelah Oracle dan DB2 merilis installer berbasis Java, maka hacking (hampir) tidak diperlukan lagi. Mungkin salah satu hacking ke database yang masih harus saya lakukan baru-baru ini, hanya sekedar men-setup DB2 di mesin AIX agar bisa menjalankan stored-procedure. Sebenarnya ada kompiler C yang sudah dibeli untuk instalasi tersebut, tapi entah kenapa saya tidak berhasil memasangnya. Daripada pusing, saya pasang saja GNU gcc di mesin tersebut. Dan dengan sedikit tweaking, stored-procedure bisa berjalan.

Andapun bisa mencoba sendiri berbagai database secara legal.
Oracle - versi evaluasi free, security update terbatas untuk pelanggan
DB2 - versi evaluasi free, security update terbuka, tapi ukurannya gila-gilaan
Informix - dibeli oleh IBM, versi evaluasi tidak tersedia lagi
Sybase - pernah ada versi evaluasi
MS SQL - belum pernah saya sentuh
SAP/DB - open source, baru sempat di download
MySQL - lisensi ganda, open source dan komersial

URLnya? Coba minta tolong ke Google untuk mencari. Anda suka memakai Google kan?

No comments: