MYSQL
1.1. SEJARAH
MySQL adalah sebuah perangkat lunak sistem manajemen basis data SQL (bahasa Inggris: database management system) atau
DBMS yang multithread, multi-user, dengan sekitar 6 juta instalasi di
seluruh dunia. MySQL
AB membuat MySQL tersedia sebagai perangkat lunak gratis dibawah lisensi GNU General
Public License (GPL), tetapi mereka juga menjual dibawah lisensi
komersial untuk kasus-kasus dimana penggunaannya tidak cocok dengan penggunaan
GPL.
Tidak sama dengan proyek-proyek seperti Apache,
dimana perangkat lunak dikembangkan oleh komunitas umum, dan hak cipta untuk kode sumber dimiliki oleh
penulisnya masing-masing, MySQL dimiliki dan disponsori oleh sebuah perusahaan
komersial Swedia MySQL
AB, dimana memegang hak cipta hampir atas semua kode sumbernya.
Kedua orang Swedia dan satu orang Finlandia yang mendirikan MySQL AB adalah: David
Axmark, Allan
Larsson, dan Michael "Monty" Widenius.
1.2. Relational Database Management System (RDBMS)
MySQL adalah Relational Database Management System (RDBMS)
yang didistribusikan secara gratis dibawah lisensi
GPL (General Public License). Dimana setiap orang bebas untuk
menggunakan MySQL, namun tidak boleh dijadikan produk turunan yang bersifat
komersial. MySQL sebenarnya merupakan turunan salah satu konsep utama dalam
database sejak lama, yaitu SQL (Structured Query
Language). SQL adalah sebuah konsep pengoperasian database, terutama untuk
pemilihan atau seleksi dan pemasukan data, yang memungkinkan pengoperasian data
dikerjakan dengan mudah secara otomatis. Keandalan suatu sistem database (DBMS)
dapat diketahui dari cara kerja optimizer-nya dalam melakukan proses
perintah-perintah SQL, yang dibuat oleh user maupun program-program
aplikasinya. Sebagai database server, MySQL dapat dikatakan lebih unggul
dibandingkan database server lainnya dalam query data. Hal ini terbukti untuk
query yang dilakukan oleh single user, kecepatan query MySQL bisa sepuluh kali
lebih cepat dari PostgreSQL dan lima kali lebih cepat
dibandingkan Interbase.
1.3. Keistimewaan MySQL
MySQL memiliki beberapa keistimewaan, antara
lain :
1. Portabilitas. MySQL dapat berjalan stabil pada
berbagai sistem operasi seperti Windows, Linux, FreeBSD, Mac Os X Server,
Solaris, Amiga, dan masih banyak lagi.
2. Open Source.MySQL didistribusikan secara open
source, dibawah lisensi GPL sehingga dapat digunakan secara cuma-cuma.
3. 'Multiuser'. MySQL dapat
digunakan oleh beberapa user dalam waktu yang bersamaan tanpa mengalami masalah
atau konflik.
4. 'Performance tuning'. MySQL
memiliki kecepatan yang menakjubkan dalam menangani query sederhana, dengan
kata lain dapat memproses lebih banyak SQL per satuan waktu.
5. Jenis Kolom. MySQL memiliki tipe kolom yang
sangat kompleks, seperti signed / unsigned integer, float, double, char, text,
date, timestamp, dan lain-lain.
6. Perintah dan Fungsi. MySQL memiliki operator dan fungsi
secara penuh yang mendukung perintah Select dan Where dalam perintah (query).
7. Keamanan. MySQL memiliki beberapa lapisan sekuritas
seperti level subnetmask, nama host, dan izin akses user dengan sistem
perizinan yang mendetail serta sandi terenkripsi.
8.
Skalabilitas dan Pembatasan. MySQL mampu menangani basis data dalam skala besar, dengan jumlah
rekaman (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.
9. Konektivitas. MySQL dapat melakukan koneksi dengan klien menggunakan protokol TCP/IP, Unix
soket (UNIX), atau Named
Pipes (NT).
10.Lokalisasi. MySQL dapat mendeteksi pesan kesalahan
pada klien dengan menggunakan lebih dari dua puluh bahasa. Meski pun demikian, bahasa Indonesia belum termasuk di dalamnya.
11.Antar Muka. MySQL memiliki interface (antar muka) terhadap berbagai aplikasi
dan bahasa pemrograman dengan menggunakan fungsi API
(Application Programming Interface).
12.
Klien dan Peralatan. MySQL dilengkapi dengan berbagai peralatan (tool)yang
dapat digunakan untuk administrasi basis data, dan pada setiap peralatan yang
ada disertakan petunjuk online.
13.Struktur tabel. MySQL memiliki struktur tabel yang lebih fleksibel dalam menangani
ALTER TABLE, dibandingkan basis data lainnya semacam PostgreSQL ataupun Oracle.
1.4. Bahasa pemrograman
Terdapat beberapa API (Application
Programming Interface) tersedia yang memungkinkan aplikasi-aplikasi
komputer yang ditulis dalam berbagai bahasa pemrograman
untuk dapat mengakses basis data MySQL antara lain: bahasa pemrograman
C, C++, C#, bahasa pemrograman Eiffel, bahasa pemrograman Smalltalk, bahasa
pemrograman Java, bahasa
pemrograman Lisp, Perl, PHP,
bahasa
pemrograman Python, Ruby, REALbasic
dan Tcl.
Sebuah antarmuka ODBC memanggil MyODBC
yang memungkinkan setiap bahasa pemrograman yang mendukung ODBC
untuk berkomunikasi dengan basis data MySQL. Kebanyakan kode sumber MySQL dalam
ANSI C.
1.5.
Penggunaan
MySQL sangat
populer dalam aplikasi web
seperti MediaWiki (perangkat lunak yang dipakai Wikipedia dan proyek-proyek sejenis) dan PHP-Nuke
dan berfungsi sebagai komponen basis data dalam LAMP.
Popularitas sebagai aplikasi web dikarenakan kedekatannya dengan popularitas PHP,
sehingga seringkali disebut sebagai Dynamic Duo. Text dicoret{{}}
1.6. Administrasi
Untuk melakukan administrasi dalam basis
data MySQL, dapat menggunakan modul yang sudah termasuk yaitu command-line (perintah:
mysql
dan mysqladmin
). Juga dapat diunduh dari situs MySQL
yaitu sebuah modul berbasis grafik (GUI): MySQL Administrator dan MySQL Query Browser. Selain itu terdapat juga sebuah
perangkat lunak gratis untuk administrasi basis data MySQL berbasis web yang
sangat populer yaitu phpMyAdmin. Untuk perangkat lunak untuk administrasi
basis data MySQL yang dijual secara komersial antara lain: MySQL front, Navicat
dan EMS SQL Manager for MySQL.