0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

MySQLで SQL 0A80E90FC (1118): Row size too large (> 8126) . のエラーが発生した場合

0
Posted at

実行環境

(old) mysql Ver 14.14 Distrib 5.1.73
(new) mysql Ver 15.1 Distrib 10.3.28-MariaDB

エラー内容

サーバーのリプレイス準備中にSQLクライアントを使用して、旧環境からエクスポートしたSQLファイルを新環境にインポートしようとしたところで発生。
エラー文は、

SQL 0A80E90FC (1118): Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline. lE8a0F: 05306E08804606A0A80E90FC092q21�9605908B06B06F001"0D00C30C10E20FC0C90670A80E90FC04CQFA05F089P5Ck6205908B" 0AA0D70B70E70F3092q21RB906B05908B05306804C06704D07E059uery

対応方法

インポートしようとしたSQLファイルの中身を確認すると、すべてのレコードで ROW_FORMAT=COMPACT となっていました。
データのあるレコードだけ置換するとエラーが継続したので、一斉置換で
ROW_FORMAT=COMPACT

ROW_FORMAT=DYNAMIC
に変換し保存、再度インポートを実行すれば、エラーなくインポートできました。テーブル内データも確認済みです。
古い環境からSQLをインポートすると出るようです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?