utf benar-benar utfmb3 dan dapat menggunakan maksimal 3 byte per karakter sedangkan utfmb4 dapat menggunakan 4 byte per karakter. Untuk kolom VARCHAR ini biasanya tidak banyak perbedaan karena MySQL hanya akan menyimpan byte sebanyak yang diperlukan (kecuali Anda telah membuat tabel MyISAM Anda dengan ROW_FORMAT=FIXED).
Namun, selama eksekusi kueri, MySQL dapat membuat tabel sementara di mesin penyimpanan MEMORY yang tidak mendukung baris dengan panjang variabel. Tabel sementara ini memiliki ukuran maksimum, dan jika ukuran tersebut terlampaui, tabel sementara akan diubah menjadi tabel di MyISAM/InnoDB (tergantung versi MySQL Anda). Variabel status Created_tmp_disk_tables
akan bertambah setiap kali ini terjadi. Jika demikian, coba lihat apakah ini membantu meningkatkan nilai max_heap_table_size
dan tmp_table_size
.
Atau, tingkatkan ke MySQL 8.0 di mana mesin penyimpanan baru yang mendukung baris dengan panjang variabel digunakan untuk tabel sementara internal.