April 6, 2017 thumb Mengatasi Error SQL Mode pada MySQL

yang pernah pakai MySQL pasti pernah merasakan program yang dimilikinya error ketika MySQL-nya di Upgrade. salah satu error yang baru-baru ini bikin program saya tidak mau berjalan dengan semestinya adalah perbedaan SQL Mode. ceritanya saya upgrade dari Ubuntu 14.04 ke Ubuntu 16.04 nah MySQL di Ubuntu 16.04 itu default mode-nya adalah strict. yang mana tentu saja membuat beberapa query di program PHP saya menjadi tidak berjalan.

sebenarnya cara untuk mengatasi masalah ini sangat simple, yakni tinggal mengubah saja sql_mode dari MySQL tersebut. jadi kalau kebetulan habis upgrade ternyata program tidak jalan. jangan buru-buru di downgrade, bisa jadi MySQL modenya saja yang salah settings.

sebelum mulai ada baiknya kita melakukan cek dahulu default dari sql_mode di komputer yang kita miliki. caranya buka PHPMyAdmin dan jalankan query berikut ini.

SELECT @@GLOBAL.sql_mode;

kemudian jalankan, maka global dari SQL mode akan ditampilkan , sebegai contoh, SQL Mode di komputer saya adalah NO_ENGINE_SUBSTITUTION yang mana kadang inilah penyebab software PHP saya tidak bekerja.

sql mode yang saat ini sedang aktif

sql mode yang saat ini sedang aktif

untuk mengubah sql mode sangat mudah, sebagai contoh karena saya ingin mengosongkan sql mode maka cukup query sebagai berikut.

SET GLOBAL sql_mode = ''

kemudian saya cek ulang dengan query yang pertama dan tampil bahwa mode SQL saya sekarang adalah kosong.

sql mode setelah dikosongkan

sql mode setelah dikosongkan

kemudian saya mencoba software PHP milik saya, setelah dicek ternyata berjalan normal. berarti memang permasalahanya adalah MySQL mode. metode pengubahan sql_mode yang kita lakukan tadi hanyalah sementara untuk itu kita harus buat supaya permanent. yakni dengan mengubah file my.cnf.

kalau kebetulan ada dilinux maka yang harus diubah adalah file di /etc/mysql/conf.d/mysql.cnf file inilah yang meyimpan settings untuk mysql saya. cukup buka file tersebut dengan akses root dan tambahkan kode berikut ini :

[mysql]
set sql_mode=''
Mengubah file mysql.cnf

Mengubah file mysql.cnf

dengan menambahkan kode tersebut kita telah meminta agar mode mysql adalah kosong. setelah selesai cukup restart mysql anda dengan mengetikan .

sudo service mysql restart

kemdian buka PHPMyAdmin dan lakukan pengecekan global mode sql dengan menggunakan query yang pertama. dengan cara seperti jika isinya kosong berarti telah berhasil. kemudian silakan coba program anda , apakah berjalan normal atau tidak. selamat mencoba, sampai jumpa di tulisan berikutnya Okey Donkey.

Comments

total comments