Cara menggunakan change default engine mysql

MySQL adalah RDBMS (Relational Database Management System) open source yang populer dan paling banyak digunakan saat ini. Data di MySQL disimpan di dalam file-file (memori) menggunakan berbagai teknik yang berbeda. Setiap teknik juga menggunakan mekanisme penyimpanan, fasilitas pengindeksan, tingkatan penguncian berbeda yang pada akhirnya akan memberikan rentang kemampuan dan fungsi yang berbeda pula.

Dengan menggunakan teknik berbeda, Anda dapat memperoleh kecepatan proses atau manfaat tambahan yang akan meningkatkan keseluruhan fungsi dari aplikasi. Masing-masing teknik dan serangkaian fungsi di dalam sistem MySQL inilah yang disebut dengan storage engine atau table type.

Baca artikel Mengetahui Storage Engine Yang Digunakan MySQL Melalui phpMyAdmin

Secara default, MySQL dilengkapi dengan beberapa storage engine yang juga telah diprakonfigurasi dan diaktifkan di server MySQL. Dua storage engine MySQL yang umum digunakan adalah InnoDB dan MyISAM. InnoDB adalah storage engine standar untuk MySQL versi 5.5 ke atas, sedangkan MyISAM adalah storage engine yang digunakan sebelum MySQL versi 5.5.

Baca artikel:

  • MySQL: Klasifikasi Perintah Dasar Dalam SQL
  • Mengenal Database MySQL Dan Keunggulannya

Anda dapat menetukan atau memilih storage engine yang akan digunakan pada server, database maupun tabel. Jika Anda tidak menentukan storage engine yang akan digunakan, maka storage engine standar yang digunakan adalah yang sesuai dengan konfigurasi server MySQL.

Berapa storage engine MySQL 5.5:

  • InnoDB : adalah storage engine yang aman untuk proses transaksional pada MySQL yang memiliki kemampuan commit, rollback dan crash-recovery untuk memproteksi data. InnoDB menyimpan data dalam indeks-indeks yang terklaster (clustered indexes) untuk mengurangi I/O atas kueri umum (common queries) berdasarkan primary key. Guna mendukung integritas data, InnoDB juga mendukung Foreign Key untuk referential-integrity constraint. InnoDB adalah storage engine standar untuk MySQL versi 5.5 ke atas.
  • MyISAM : merupakan storage engine standar untuk MySQL sebelum versi 5.5 dan yang paling panyak digunakan pada data werehousing, Web dan lingkungan aplikasi lainnya. Beberapa contoh CMS (Content Management System) terkenal yang telah menggunakan MySQL diantaranya adalah Joomla, Wordpress dan Drupal.
  • Memory : merupakan storage engine yang menyimpan data di RAM untuk akses cepat terhadap pencarian data. Storage engine yang awalnya dikenal sebagai HEAP engine ini pemanfaatannya cenderung mengalami penurunan.
  • CSV : mulai ditambahkan di MySQL versi 4.1.4, adalah storage engine yang menyimpan data dalam bentuk file text dan menggunakan pembatas koma untuk memisahkan format nilai. Anda dapat menggunakannya untuk bertukar data antar perangkat lunak yang mendukung format CSV.
  • Merge : merupakan storage engine yang memudahkan Administrator Database MySQL untuk mengelompokkan secara logis serangkaian tabel MyISAM yang identik dan mengacunya sebagai satu obyek.
  • Archive : mulai ditambahkan di MySQL versi 4.1.3, merupakan storage engine yang digunakan untuk menyimpan atau memperoleh informasi dalam jumlah cukup besar dari tabel-tabel yang tidak terindeks.
  • Blackhole : merupakan storage engine yang menerima tetapi tidak menyimpan data dan proses pengambilan data selalu tidak menghasilkan apapun (an empty set), digunakan dalam disain database terdistribusi dimana data otomatis direplikasi tetapi tidak disimpan.
  • Federated : mulai ditambahkan di MySQL versi 5.0, merupakan storage engine yang menawarkan kemampuan untuk menghubungkan server MySQL yang terpisah untuk membuat satu database logis dari banyak server fisik.
  • Example : merupakan storage engine yang berfungsi sebagai rintisan yang tidak melakukan apapun dan berfungsi sebagai contoh dalam kode sumber MySQL. Anda dapat membuat tabel menggunakan storage engine ini, tetapi tidak dapat digunakan untuk menyimpan ataupun mengambil data.

Halo eperibadeh, apa kabar nih? semoga baik baik saja yahh. Tidak terasa sudah lebih dari 3 bulan lalu saya tidak update ini blog, maklum lagi gencar posting di DownloadAja.com #promosidikit hehe :D. Mudah-mudahan mulai hari ini bisa aktif posting lagi disini, doain aja ya gan biar ga males hehe.

Oke sekarang kita masuk kemateri ini yaitu mengenai InnoDB dan cPanel. Hmm apasih hubungannya InnoDB dan cPanel gan? Gini gini saya ceritain, jaman dahulu kala #ejiehhlebayhehe, cPanel menggunakan MySQL untuk database dan MySQL terdahulu itu pakai InnoDB sebagai Engine-nya. Lambat laun, Engine pada MySQL berganti pada MyISAM.

Hmm terus gan hubungan dengan postingan ini apa? Gini gan saya pernah menemukan masalah dimana saya melakukan export-import hosting dari tempat lama ke tempat baru pada cPanel versi lama ke versi yang terbaru. Otomatis pada cPanel versi terbaru Engine InnoDB pada MySQL didisable dan ini menjadi pokok permasalahannya. Sudah paham kan gan? Kalau sudah paham sekarang kita masuk ke materi inti, bagaimana cara memperbaikinya dan agar ini tidak terjadi lagi.

Cara mengaktifkannya hanya perlu akses SSH ke server sebagai root (atau user yang diberikan kewenangan sudo atau su dan dapat akses root). Jika sudah, cek entry seperti berikut pada /etc/my.cnf :

skip-innodb

Jika entry seperti diatas ada, maka anda hanya perlu mendelete entry tersebut dan restart service MySQL.

Jika entry tersebut tidak ada, maka yang anda perlukan adalah restart service MySQL saja.

Jika masih bermasalah ketika tidak ada, anda dapat menambahkan comment (#) pada entry tersebut menjadi seperti berikut :

#skip-innodb

Jika sudah dienable, anda perlu melakukan penggantian default engine MySQL pada /etc/my.cnf dan mengikuti entry berikut :

default-table-type=innodb

Restart service MySQL untuk apply konfigurasi tersebut. Perlu diketahui InnoDB adalah engine yang lebih berat dari MyISAM dalam service MySQL. Do it with your own risk! Good Luck! 😀

Seorang warga negara Indonesia biasa. Pengguna MAC dan develop server Ubuntu & CentOS. Contact : admin [at] nugi.biz