Muhammad Hafid

Belajar Python itu mudah, Belajar Framework Django, Belajar Python yuk, Belajar Pemrograman Dasar Python, Belajar Python Asik

Muhammad Hafid

Tugas kita itu adalah bukan untuk berhasil, tugas kita adalah untuk mencoba, karena di dalam mencoba itulah kita menemukan dan belajar membangun kesempatan untuk berhasil.

Error Message Specified key was too long; max key length is 767 bytes

Hallo sobat coding pecinta Django Framework. Disini saya mencoba membuat sebuah projek dengan menggunakan koneksi MySQL, tidak seperti biasanya saya menggunakan database ini untuk aplikasi berbasis Django.

Saya ingin share mengenai pengalaman saat saya melakukan migrate setelah makemigrations. disini saya kedapat error di console seperti dibawah ini :
File "/home/mhafid/Workspace/artha/lib/python3.5/site-packages/MySQLdb/cursors.py", line 312, in _query
    db.query(q)
  File "/home/mhafid/Workspace/artha/lib/python3.5/site-packages/MySQLdb/connections.py", line 224, in query
    _mysql.connection.query(self, query)
django.db.utils.OperationalError: (1071, 'Specified key was too long; max key length is 767 bytes')
Fokus terhadap yang saya bold ya, setelah saya baca-baca untuk case ini, kalian harus biasakan mensetup database MySQL dengan format InoDB. Apabila kalian sudah yakin bahwa database kalian berformat InoDB, maka kalian harus mengubahnya ke dalam UTF8 biasanya MySQL membuat database dengan format Collactionnya UTF8mb4.
Pertanyaannya, apakah kalian sudah paham cara mengubah tipe collactionnya menjadi utf8 ?
Hal yang paling utama, kalian harus menginstall phpmyadmin, disini saya tidak menjelaskan apabila menggunakan Command Line, karena saya menggunakan phpmyadmin (enak dan simple), kalau ada yang mudah kenapa tidak kita pakai tools ini. Benar bukan ?

Langkahnya adalah :

  1. Login kedalam PhpMyAdmin kalian
  2. Masuk kedalam database kalian (klik namadatabase)
  3. Cari menu Operations yang berada di topbar menu
  4. Cari bagian Collaction, ubah lah menjadi utf8_general_ci
Sekarang coba lakukan migrate di django kalian.

Disini saya menggunakan :
  • Pyhton 3.5
  • Django versi 2
  • MariaDB versi 10
  • Os Linux Mint
Semoga solve dan bermanfaat.

Labels: database , Django , mysql , python

Thanks for reading Error Message Specified key was too long; max key length is 767 bytes . Please share...!

0 Comment for "Error Message Specified key was too long; max key length is 767 bytes"

Back To Top