大きなサイズのインデックスを生成しようとするとERROR 1071が発生することがあり、そんな時にはinnodb_large_prefixパラメータを利用すると良いことがある。 MySQLのInnoDBストレージエンジンのテーブルの長いvarcharカラムを含むカラムにインデックスを生成しようとしたことがあれば、このエラーを見たことがあるだろう。 ERROR 1071 (42000): Specified key was too long; max key length is 767 bytes 文字数制限は、使っている文字コードに依存する。例えば latin1 であればインデックスを生成できる最大カラムは varchar(767)であるが、 utf8 の場合は varchar(255) までである。 インデックスあたり、3072バイトという別の制限もある。767バイトはカラムごとの制限な
![innodb_large_prefixを使ってERROR 1071を回避する | Yakst](https://cdn-ak-scissors.b.st-hatena.com/image/square/ca06758d2b05cba2f89a1d53c584e69eb5d0adfe/height=288;version=1;width=512/https%3A%2F%2Fyakst.com%2Fpost_icons%2Fblog_default.png)