タグ

ブックマーク / 3.1415.jp (1)

  • Rails を utf8mb4 で動かす

    絵文字などを格納できるようにするため、MySQL の encoding を utf8mb4 にすると、1文字が最大 4バイトになる。すると、primary key と unique key として使うカラムが、InnoDB の最大長 767バイトを超えるために、 ERROR 1071 (42000): Specified key was too long; max key length is 767 bytes というエラーが発生する。 それを乗り越えるための手順は以下の通り。 1) まず、my.cnf に以下を追加して restart させる。 character-set-server = utf8mb4 collation-server = utf8mb4_unicode_ci innodb_file_per_table = 1 innodb_file_format = Barracu

    morygonzalez
    morygonzalez 2014/12/27
    utf8mb4 にすれば絵文字は使えるようになるけど MySQL のその他の設定つらそう
  • 1