43
Struts dibungkus dengan subframework validator yang menyediakan kumpulan framework untuk kebutuhan validasi
data pada klien maupun server.
2.9 MySQL
MySQL merupakan software sistem manajemen database Database Management SystemsDBMS yang sangat populer di kalangan
pemrograman web, terutama di lingkungan Linux dengan menggunakan script PHP dan Perl Sidik, 2005. MySQL merupakan salah satu jenis
database server yang sangat terkenal. Kepopulerannya disebabkan MySQL menggunakan SQL sebagai bahasa dasar untuk mengakses
database-nya. Software database ini kini telah tersedia juga pada platform sistem operasi Windows Prasetyo, 2003.
MySQL adalah Relational Database Management Sistem RDBMS yang didistribusikan secara gratis di bawah lisensi GPL
General Public License. Dimana setiap orang bebas untuk menggunakan MySQL, namun tidak boleh dijadikan produk turunan yang bersifat closed
source atau komersial Prasetyo, 2003. MySQL ideal untuk perangkat lunak database berbasis web
berukuran minimal dan menengah, namun telah menjanjikan untuk penggunaan besar Hariyanto, 2004.
2.9.1 Sejarah MySQL
44
Pada tahun 1994 MySQL pertama kali dikembangkan oleh pengembang software dan konsultan database bernama MySQL
AB yang dulunya bernama TcX DataKonsult AB yang bertempat di Swedia.
Awalnya Michael Widenius ”Monty”, pengembang satu- satunya di TCX, memiliki sebuah aplikasi UNIREG dan rutin
ISAM buatannya sendiri dan sedang mencari antarmuka SQL yang cocok untuk diimplementasikan ke dalamnya. Mula-mula Monty
memakai miniSQL mSQL pada eksperimennya itu, namun mSQL dirasa kurang sesuai, karena terlalu lambat dalam pemrosesan
query. Akhirnya Monty menghubungi David Hughes, pembuat
mSQL yang sedang merilis versi kedua dari mSQL. Kemudian Monty mencoba membuat sendiri mesin SQL yang memiliki
antarmuka mirip dengan SQL, tetapi dengan kemampuan yan glebih sesuai dan lahirlah MySQL.
Tentang pengambilan nama MySQL, sampai saat ini masih belum jelas asal usulnya. Ada yang berpendapat nama My diambil
dari huruf depan dan belakang Monty, tetapi versi lain mengatakan itu diambil dari nama putri Monty yang kebetulan bernama My
Prasetyo, 2003.
2.9.2 Keistimewaan MySQL
45
Sebagai database server yang memiliki konsep database modern, MySQL memiliki banyak sekali keistimewaan. Berikut ini
beberapa keistimewaan yang dimiliki MySQL Prasetyo,
2003:
a. Portability
MySQL dapat berjalan stabil pada berbagai sistem operasi seperti Windows, Linux, FreeBSD, Mac Os X Server, Solaris,
Amiga dan masih banyak lagi. b. Open Source
MySQL didistribusikan secara open source, di bawah lisensi GPL sehingga dapat digunakan secara cuma-cuma.
c. Multiuser
MySQL dapat digunakan oleh beberapa user dalam waktu yang bersamaan tanpa mengalami masalah atau konflik.
d. Performance tuning MySQL memiliki kecepatan yang menakjubkan dalam
menangani query sederhana, dengan kata lain dapat memproses lebih banyak SQL per satuan waktu.
e. Column types
MySQL memiliki tipe kolom yang sangat kompleks, seperti signed unsigned integer, float, double, char, text, date,
timestamp dan lain-lain.
46
f. Command dan functions
MySQL memiliki operator dan fungsi secara penuh yang mendukung perintah Select dan Where dalam query .
g. Security
MySQL memiliki beberapa lapisan sekuritas seperti level subnetmask, nama host dan izin akses user dengan sistem
perizinan yang mendetail serta password terenkripsi. h. Scalability dan limits
MySQL mampu menangani database dalam skala besar, dengan jumlah records lebih dari 50 juta dan 60 ribu tabel serta
5 milyar baris. Selain itu batas indeks yang dapat ditampung mencapai 32 indeks pada tiap tabelnya.
i. Connectivity MySQL dapat melakukan koneksi dengan client menggunakan
protokol TCPIP, Unix soket UNIX, atau Named Pipes NT. j.
Localisation MySQL dapat mendeteksi pesan kesalahan pada client dengan
menggunakan lebih dari dua puluh bahasa. Meskipun demikian, bahasa Indonesia belum termasuk di dalamnya.
k. Interface
47
MySQL memiliki interface terhadap berbagai aplikasi dan bahasa pemrograman dengan menggunakan fungsi API
Application Programming Interface.
l. Clients dan tools MySQL dilengkapi dengan berbagai tool yang dapat digunakan
untuk administrasi database dan pada setiap tool yang ada disertakan petunjuk online.
m. Struktur tabel MySQL memiliki struktur tabel yang lebih fleksibel dalam
menangani ALTER TABLE, dibandingkan database lainnya semacam PostgreSQL ataupun Oracle.
2.10 Unified Modeling Language UML