skillup

技術ブログ

Database

MySQLでtext型が大量にあるもののリストア 

投稿日:

MySQLでのリストアについて。

先日実務でtext型のカラムが複数あるテーブルを読もうとしたら下記エラーがでてこけました。

なにやらカラム数が多い&TEXTorBLOB型だとこのエラーがでるようです。

対策

/etc/my.confに下記設定を追加し、再起動

TABLEの定義文にROW_FORMAT=DYNAMICかROW_FORMAT=COMPRESSEDをつける

これで読み込めました。

ちなみに、テーブルが数十あってあるテーブルだけこける場合、下記のようなやり方がおすすめです。

  1. ダンプファイルを下記方法でテーブルごとに区切る。
    参考MySQL小ネタ テーブル単位のリストア・SQLの小ネタ(バックスラッシュの検索)
  2. 問題のあるテーブルのファイル、外し、残りをcatで再度同一のテキストファイルにする

こうして読み込んでみましょう。

参考リンク

Row size too large (> 8126). が出たので、解決がてら周辺知識をまとめてみた

【MySQL5.6->5.7】 とてもたくさんの列をもったテーブルをつくりたい/Row size too large (> 8126)についてかんがえる

-Database
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

アンチパターン データ分身の術+DBの不要な連携+バージョンアップ未テスト

今回のアンチパターンは主にデータ設計に関する部分。 Contents1 同一データの使用1.1 デメリット1.2 対策2 DBの不要な連携2.1 デメリット2.2 対策3 サーバーの移行やバージョンア …

no image

SQL 集計関数の利用

先日同様、ある程度複雑な問題のSQLに関して。出典はSQL実践入門。 問題 下記のようなテーブル(テーブル名)で より古い年のデータが存在しない場合 NULL 直近の年のデータより売り上げが伸びた場合 …

no image

正規化のデメリット

Contents1 正規化のデメリット2 本日のSQL 正規化のデメリット 正規化についていろいろ書いてきましたが、メリットもあればデメリットもあります。 メリットとしては データの不整合が起きにくい …

no image

NOT EXISTSの利用

引き続きNOT EXISTSの利用です。 思った以上に使えますね・・・がムズイ。 今回は下記のようなテーブル(seats)があるとします。 ケースとしては新幹線の座席番号で空は席が空いている状態、占は …

no image

論理設計のアンチパターン

今回からは論理設計のアンチパターンについて。 やってはいけない設計のパターンですね。これはまわりがやっていると気づかずにやっている可能性があるのでしっかりメモしておきたいです。 Contents1 非 …