「行サイズが大きすぎます」エラーによる MySQL の行サイズ制限への対処
MySQL の「行サイズが大きすぎます」エラーは、次の場合に発生します。データベーステーブルの行が許容制限を超えています。この問題を解決するには、根本的な要因を理解することが重要です。
指定されたテーブルでは、MySQL エラーは行サイズが 8126 バイトを超えていることを示しています。これはおそらく、次のような複数のテキスト列 (TEXT または BLOB) が原因です。大きなデータ。これに対処するには、特定の列をテキストまたは BLOB データ型に変換するか、行形式の最適化手法を利用することを検討してください。
ただし、エラー メッセージは、BLOB プレフィックスのインライン ストレージが問題の原因となっている可能性があることも示唆しています。これを克服するには:
1. Barracuda ファイル形式の活用:
InnoDB のこのファイル形式は、最初の 768 バイトではなく、テキスト データへの 20 バイトのポインタのみを保存するため、行サイズの制限が効果的に排除されます。 Barracuda をアクティブにするには:
2. MyISAM エンジンを利用する (一時的な解決策):
残念ながら、InnoDB エンジンのバグにより、Barracuda ベースのソリューションでは必ずしも問題が解決されるとは限りません。このような場合、internal_tmp_disk_storage_engine=MyISAM を my.cnf ファイルに追加することで、一時ストレージ オプションとして MyISAM エンジンにフォールバックできます。
以上がMySQL の「行サイズが大きすぎます」エラーを解決するには?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。