Pengertian MySQL
MySQL adalah suatu perangkat lunak database relasi (Relational Database Management System atau RDBMS), seperti halnya ORACLE, Postgresql, MS SQL, dan sebagainya. MySQL AB menyebut produknya sebagai database open source terpopuler di dunia. Berdasarkan riset dinyatakan bahwa bahwa di platform Web, dan baik untuk kategori open source maupun umum, MySQL adalah database yang paling banyak dipakai. Menurut perusahaan pengembangnya, MySQL telah terpasang di sekitar 3 juta komputer. Puluhan hingga ratusan ribu situs mengandalkan MySQL bekerja siang malam memompa data bagi para pengunjungnya.
Fitur MySQL
Kalau di seri 3.22 MySQL mulai diadopsi banyak orang dan meningkat populasi penggunanya, maka di seri 3.23 dan 4.0-lah terjadi banyak peningkatan dari sisi teknologi. Ini tidak terlepas dari tuntutan pemakai yang semakin mengandalkan MySQL namun membutuhkan fitur-fitur yang lebih banyak lagi.
Seri 3.23. Di seri 3.23 MySQL menambahkan tiga jenis tabel baru: pertama MyISAM, yang sampai sekarang menjadi tipe tabel default; kedua BerkeleyDB, yang pertama kali menambahkan kemampuan transaksi pada MySQL dan ketiga InnoDB.
Seri 4.x. Di seri yang baru berjalan hingga 4.0 tahap alfa ini, pengembang MySQL berjanji akan menjadikan MySQL satu derajat lebih tinggi lagi. Fitur-fitur yang sejak dulu diminta akan dikabulkan, seperti subselek (di 4.1), union (4.0), foreign key constraint (4.0 atau 4.1—meski InnoDB sudah menyediakan ini di 3.23.x), stored procedure (4.1), view (4.2), cursor (4.1 atau 4.2), trigger (4.1). MySQL AB tetap berdedikasi mengembangkan dan memperbaiki MySQL serta mempertahankan MySQL sebagai database open source terpopuler.
Keunggulan MySQL
Penyebab utama MySQL begitu popular di kalangan Web adalah karena ia memang cocok bekerja di lingkungan tersebut. Pertama, MySQL tersedia di berbagai platform Linux dan berbagai varian Unix. Sesuatu yang tidak dimiliki Access, misalnya—padahal Access amat popular di platform Windows. Banyak server Web berbasiskan Unix, ini menjadikan Access otomatis tidak dapat dipakai karena ia pun tidak memiliki kemampuan client-server/networking.
Kedua, fitur-fitur yang dimiliki MySQL memang yang biasanya banyak dibutuhkan dalam aplikasi Web. Misalnya, klausa LIMIT SQL-nya, praktis untuk melakukan paging. Atau jenis indeks field FULLTEXT, untuk full text searching. Atau sebutlah kekayaaan fungsi-fungsi builtinnya, mulai dari memformat dan memanipulasi tanggal, mengolah string, regex, enkripsi dan hashing. Yang terakhir misalnya, praktis untuk melakukan penyimpanan password anggota.
Ketiga, MySQL memiliki overhead koneksi yang rendah. Soal kecepatan melakukan transaksi atau kinerja di kondisi load tinggi mungkin bisa diperdebatkan dengan berbagai benchmark berbeda, tapi kalau soal yang satu ini MySQL lah juaranya. Karakteristik ini membuat MySQL cocok bekerja dengan aplikasi CGI, di mana di setiap request skrip akan melakukan koneksi, mengirimkan satu atau lebih perintah SQL, lalu memutuskan koneksi lagi. Cobalah melakukan hal ini dengan Interbase atau bahkan Oracle. Maka dengan load beberapa request per detik saja server Web/database Anda mungkin akan segera menyerah karena tidak bisa mengimbangi beban ini
Artikel tentang peningkatan fasilitas dan kemampuan Database server open source MySQL pada versi 4 dan 4.1
MySQL dikenal cepat tetapi tidak dikenal sebagai database server yang lengkap fasilitasnya. MySQL kalah dibandingkan dengan PostgreSQL dalam kelengkapan fasilitas, tetapi unggul dalam kecepatan sehingga MySQL sangat disukai oleh para web developer yang memerlukan pemrosesan database yang cepat. Pada versi 4 telah ditambahkan fasilitas dan kemampuan baru, begitu juga pada versi selanjutnya. Dan peningkatan pada versi 5 mampu mengubah pandangan bahwa MySQL tidak canggih karena pada MySQL 5 terdapat penambahan fasilitas yang cukup berarti seperti Stored Procedure sehingga bisa dikatakan bahwa MySQL 5 akan menjadi produk database server yang tangguh dan lengkap.
Saat penulisan artikel ini, MySQL telah memiliki versi 4.0.16 yang bisa dikatakan merupakan versi yang telah matang dan stabil di mana secara resmi pada Maret 2003 diumumkan bahwa versi 4.0.12 adalah versi produksi yang stabil. Sedangkan versi 4.1 telah mencapai versi alpha 4.1.1 yang berarti Anda dapat menggunakannya pada development software baru karena versi ini telah mendekati versi produksi walau mungkin masih terdapat sejumlah bug pada fasilitas tertentu.
Untuk versi 3, MySQL telah mencapai versi 3.23.58 yang dapat diandalkan karena kestabilan dan kecepatan yang telah terbukti. Tetapi karena keterbatasan fasilitas yang ada pada versi 3, banyak developer lebih menyukai untuk bermigrasi ke versi berikutnya.
Pengembangan dan fasilitas yang ditambahkan pada MySQL versi 4 adalah:
- Peningkatan kecepatan
MySQL 4 memiliki cache query yang dapat meningkatkan kecepatan pada aplikasi yang melakukan kueri berulang-ulang. Selain itu juga terdapat peningkatan kecepatan pada INSERT dalam jumlah besar, pencarian pada index yang terpack, pembuatan index FULLTEXT, dan COUNT(DISTINCT). - Ada versi Embedded MySQL Server
- InnoDB storage engine sebagai standar
InnoDB merupakan engine MySQL yang diperlukan untuk transaksi ACID, foreign key dengan cascading UPDATE dan DELETE, dan row level locking. - Fungsi baru
Properti FULLTEXT memberikan fasilitas indexing FULLTEXT untuk data teks dalam jumlah besar
- Standards compliance, portabilitas, dan migrasi
- Fasilitas untuk memudahkan migrasi dari sistemdatabase lain ke MySQL Server, termasuk TRUNCATE TABLE (seperti Oracle)
- Dukungan terhadap perintah SQL UNION
- Internasionalisasi set karakter
- MySQL berjalan native pada Novell Netware 6
· Peningkatan usabilitas
- Parameter mysqld dapat diset tanpa perlu shutdown server.
- Multiple-table DELETE dan UPDATE
- Dukungan pada MyISAM untuk symbolic linking pada level table fungsi SQL_CALC_FOUND_ROWS and FOUND_ROWS() untuk mendapatkan jumlah baris dari kueri SELECT yang mengikutkan klausa LIMIT yang akan dikembalikan tanpa mengikutkan klausa tersebut
Fasilitas baru pada versi 4.1
- Dukungan subkueri dan tabel turunan
- Subkueri adalah perintah SELECT yang bertingkat (terletak pada perintah SQL lain).
- Tabel turunan adalah (view yang tidak bernama) subkueri pada klausa FORM dari perintah SQL lain.
- Peningkatan kecepatan
- Fungsi baru
- Perintah CREATE TABLE table_name2 LIKE table_name1 mampu membuat tabel baru dengan struktur sama pada tabel yang sudah ada
- Dukungan untuk OpenGIS spatial types (data geografikal)
- Replikasi dapat dilakukan pada koneksi SSL
- Standards compliance, portabilitas, dan migrasi
- Protokol client/server baru menambahkan kemampuan untuk menyampaikan banyak peringatan ke client, bukan hanya satu result saja. SHOW WARNINGS menampilkan peringatan untuk perintah terakhir.
- Internasionalisasi
- Set karakter dapat didefinisikan per kolom, tabel dan database
- Peningkatan usabilitas
- Perintah HELP berbasis server untuk mendapatkan informasi bantuan dari perintah SQL. Informasi ini dapat diakses melalui perintah SQL dan client juga dapat mendapatkan informasi ini.
- Pada protokol baru ini, banyak perintah/statement dapat disampaikan dalam satu call/pemanggilan
- Client/server protocol baru juga mendukung kemampuan mendapatkan banyak result set sekaligus.
- Perintah baru INSERT ... ON DUPLICATE KEY UPDATE ... syntax telah diimplementasikan. Ini mengizinkan Anda melakukan UPDATE baris yang sudah ada bila INSERT menyebabkan duplikasi pada PRIMARY atau UNIQUE key (index).
- Fungsi aggregate baru, GROUP_CONCAT() yang menambahkan kemampuan penggabungan kolom dari group baris ke dalam satu hasil string.

0 comments:
Post a Comment