ホームページ > データベース > mysql チュートリアル > MySQL エラー コード 1118 を解決する方法: 行サイズが大きすぎますか?

MySQL エラー コード 1118 を解決する方法: 行サイズが大きすぎますか?

Mary-Kate Olsen
リリース: 2025-01-05 01:09:08
オリジナル
638 人が閲覧しました

How to Resolve MySQL Error Code 1118: Row Size Too Large?

エラー コード 1118 への対処: MySQL で行サイズが制限を超えています

MySQL でエラー コード 1118 が発生した場合は、行のサイズが制限を超えていることを示します。許容制限は 8126 バイトです。この問題は、多数の列を含む大規模なテーブルを作成するときによく発生します。

このエラーに対処するには、次の解決策の実装を検討してください:

列の型の最適化:

スキーマでは、一部の列を CHAR(1) として宣言しています。これは、文字制限が 1 文字のみであることを意味します。これらを TEXT 列または BLOB 列に置き換えると、容量が大幅に増加します。さらに、LONG 列の使用は避けてください。

Barracuda ファイル形式を有効にする:

MySQL の Barracuda ファイル形式により、パフォーマンスが向上し、より大きな行サイズが可能になります。これを有効にするには、MySQL 構成ファイル (my.ini) に次の属性を追加します。

innodb_file_per_table=1
innodb_file_format=Barracuda
innodb_file_format_check = ON
ログイン後にコピー

innodb_strict_mode を調整します:

前の対策が成功しなかった場合innodb_strict_mode パラメータを 0 に変更してみてください。この設定により、行サイズのチェックが緩和され、サイズが制限を超えている場合でもレコードを挿入できるようになります。指定された制限:

innodb_strict_mode             = 0
ログイン後にコピー

クエリで述べたように、従来の制限によりテーブルの構造を変更できないことに注意してください。したがって、上記のソリューションを検討し、特定のアプリケーションに最適なアプローチを特定してください。

以上がMySQL エラー コード 1118 を解決する方法: 行サイズが大きすぎますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート