Amazon MySQL RDS インスタンスを、MySQL を実行している自分のサーバーにエクスポートしたいと考えています。データベースのダンプに成功し、新しいデータベースでユーザーを再作成しましたが、ダンプファイルをインポートすると、次のようになります。
ERROR 1071 (42000) at line 25: Specified key was too long; max key length is 767 bytes
一部のグーグルは、InnoDB の最大キー サイズが 767 であることを明らかにしました。RDS で次のオプションを使用していたことが判明しました。
innodb_large_prefix=on
innodb_file_format=barracuda
innodb_file_per_table=true
log_bin_trust_function_creators=1
これらのオプションを my.cnf に追加しましたが、同じエラー メッセージが表示されました。次に、innodb_large_prefix は ROW_TYPE=DYNAMIC のテーブルでのみ機能することを読みました。RDS で動的行を使用していたことが判明しましたが、これらの行はダンプファイルで DYNAMIC として作成されていませんでした。次に、ダンプファイルに ROW_TYPE=DYNAMIC オプションを追加したこの StackOverflow の投稿を見つけました: Force row_format on mysqldump
それでも、同じエラーメッセージが表示されます。アイデア?