読者です 読者をやめる 読者になる 読者になる

by shigemk2

当面は技術的なことしか書かない

Got error 124 from storage engine

MySQL
  • わりと巨大なマージテーブルのcreate table時に、インデックスを貼る

条件はこれだけ。具体的にはselect出来ない。countは出来たけど。テーブル作成時にインデックスを貼らなければ、この問題は起きないもよう。

なお、create table時にインデックスを貼らずに、あとからインデックスを貼ってselect文を実行しても同様のエラーになる。

MERGEテーブルに対して、データが一意になるような設定(primary key とか unique index)をすると Got error 124 from storage engine

って書いてあるが、マージテーブルにユニークインデックスを貼ると動作が保証されなくなるという話。

もう少し調べないといけない。

わかっていることは、

  • 数百万、数千万レコードレベルでマージテーブルを作ろうとするときにインデックスを貼るとget error 124になることがある
  • 普通に数千レコードのマージテーブルだとインデックスを貼ったやつでも問題なかった
  • unique indexと普通のインデックスの違いがあまり良く分かっていない。

serverroom.sundaybreeze.jp

mt.orz.at