Tipe-Tipe Tabel Pada MySQL

Tipe-Tipe Tabel Pada MySQL

MySQL mendukung beberapa tipe tabel, tergantung konfigurasi saat proses instalasi MySQL. MySQL memiliki 3 (tiga) tipe data utama, yaitu MyISAM, InnoDB dan HEAP. Jika kita tidak mendefinisikan tipe tabel saat membuat tabel, maka tipe tabel akan dibuat. Hal ini ditentukan oleh variabel default-table-type di file konfigurasi MySQL.


MyISAM

Tipe tabel MyISAM merupakan tipe tabel yang sederhana, stabil dan mudah digunakan. Untuk menyimpan data sederhana, sebaiknya kita menggunakan tipe data MyISAM. Kelebihan utama MyISAM adalah kecepatan dan
kestabilannya. Jika kita memilih tipe tabel MyISAM, maka MySQL secara otomatis akan menentukan salah satu dari tiga jenis tabel MyISAM, yaitu :

1. MyISAM static. Jenis ini digunakan ketika semua kolom dalam tabel didefinisikan dengan ukuran yang pasti (fixed). Dengan kata lain, tidak ada kolom yang memiliki tipe seperti VARCHAR, TEXT dan BLOB. Karena sifatnya yang fixed, maka jenis ini akan lebih cepat, aman dan stabil.
2.  MyISAM dymanic. Jenis ini digunakan ketika terdapat kolom dengan tipe yang dinamis, seperti tipe kolom VARCHAR. Keuntungan utama dari jenis ini adalah ukuran yang dinamis. Jadi sifatnya lebih efektif karena ukuran data (file) menyesuaikan isi dari masing-masing kolom (field).
3. MyISAM Compressed. Kedua jenis MyISAM, static dan dynamic dapat dikompresi menjadi satu jenis yaitu MyISAM Compressed dengan perintah myisamchk. Tentunya hasilnya lebih kecil dari segi ukuran. Tabel yang
terkompresi tidak dapat dikenakan operasi seperti INSERT, UPDATE dan DELETE.

InnoDB

Tipe tabel InnoDB merupakan tipe tabel MySQL yang mendukung proses transaksi. Tipe ini memiliki beberapa keunggulan, antara lain:
a. Mendukung transaksi antar tabel.
b. Mendukung row-level-locking.
c. Mendukung Foreign-Key Constraints.
d. Crash recovery.

Heap

Tabel dengan tipe HEAP tidak menyimpan datanya di hardisk, tetapi menyimpan di RAM (memori). Tipe tabel ini biasanya digunakan sebagai tabel sementara (temporary). Tabel secara otomatis akan dihapus (hilang) dari MySQL
saat koneksi ke server diputus atau server MySQL dimatikan.
Selain 3 (tiga) tipe tabel diatas, yaitu MyISAM, InnoDB dan HEAP, MySQL juga mendukung tipe tabel yang lain, yaitu:

a. BDB. Tipe tabel ini mirip tipe tabel InnoDB, namun penggunaannya belum maksimal.
b. Archieve. Tipe ini tersedia sejak MySQL versi 4.1. Tipe ini digunakan untuk menyimpan tabel yang terkompresi, dimana biasanya digunakan dalam proses backup.
c. CSV. Tipe ini digunakan untuk menyimpan data dalam bentuk file text yang dibatasi dengan koma (delimiter). Tipe ini tersedia sejak MySQL versi 4.1.
d. NDB Table (MySQL Cluster). Tersedia sejak MySQL versi 4.1.
e. Federated (External Tables). Tipe ini tersedia sejak MySQL versi 5.0.