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

オブジェクト指向 データベース層

本日も引き続き「現場で役立つシステム設計の原則」を読み進めてます。 本日は主にデータベース層の考え方について。 Contents1 データべース層1.1 要点1.1.1 典型的なダメテーブル設計1.1 …

no image

外部結合 応用編

本日は「達人に学ぶSQL徹底指南書」の外部結合の応用編です。 下記のような3つのテーブルがあるとします。例によってここを使わしてもらってます。 tblsex sex_cd | sex —& …

no image

SQLにおけるナンバリング

本日はナンバリングに関して。 MySQLを使っていますと各テーブルにはid int not null auto_increment primary keyなどと打って主キーを打つことがほぼ習慣になって …

no image

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

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

no image

herokuでMySQL

昨日に続き、heroku+MySQLのメモです。 herokuはディフォルトではPostgreSQLですが、アドオンを使うとMySQLも使えるようになります。 使い方ですが、herokuの管理画面でク …