2011年4月 7日

[mysql 15566] Re: MySQLエラーコード「159」について

hayaseさん、
ご連絡ありがとうございます。

>ちなみに、Version情報やPlatform等が書いてあると
>答えやすくなるのは古今東西共通していると思います。
>また、該当テーブルを作成したcreate文もあったら良いですね。
失礼しました。環境情報は以下のとおりです。

■環境
CentOS:5.5 + MySQL:5.1.50

■テーブル作成クエリ
CREATE TABLE schema01.table01 (
col01 int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '******',
col02 int(10) unsigned NOT NULL DEFAULT '0' COMMENT '******',
col03 tinyint(3) unsigned NOT NULL DEFAULT '0' COMMENT '******',
col04 smallint(5) unsigned NOT NULL DEFAULT '0' COMMENT '******',
col05 tinyint(3) unsigned NOT NULL DEFAULT '0' COMMENT '******',
col06 int(10) unsigned NOT NULL DEFAULT '0' COMMENT '******',
col07 smallint(5) unsigned NOT NULL DEFAULT '0' COMMENT '******',
col08 int(10) unsigned NOT NULL DEFAULT '0' COMMENT '******',
col09 smallint(5) unsigned NOT NULL DEFAULT '0' COMMENT '******',
col10 smallint(5) unsigned NOT NULL DEFAULT '0' COMMENT '******',
col11 smallint(5) unsigned NOT NULL DEFAULT '0' COMMENT '******',
col12 tinyint(3) unsigned NOT NULL DEFAULT '0' COMMENT '******',
col13 tinyint(3) unsigned NOT NULL DEFAULT '0' COMMENT '******',
col14 tinyint(3) unsigned NOT NULL DEFAULT '0' COMMENT '******',
col15 datetime NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT '******',
col16 timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '******',
PRIMARY KEY (col01),
UNIQUE KEY key1 (col02,col03),
KEY key2 (col05),
) ENGINE=InnoDB AUTO_INCREMENT=****** DEFAULT CHARSET=utf8 COMMENT='******'
;

■実行クエリ
ALTER TABLE table ADD INDEX key3 (col05, col12, col14, col16);


>問題無いというのは、
>? エラーは出たが正常に実行された(INDEXが正しく作られた)
>? 作成しなくてもよいINDEXだった
エラーは出ましたが、正常に実行されてINDEXが作成されました。


>なんとなく環境の問題のような気がしますが・・・
>お役に立てなくて申し訳ありません。
確かに再現性はないので、環境もしくは何かしらのタイミングのような気がしています。

お気づきの点がありましたら、ご連絡お願いします。

以上、宜しくお願いします。


On Thu, 07 Apr 2011 12:38:33 +0900
Takeshi Hayase <linus@xxxxx> wrote:

> 初めまして。
> hayaseと申します。
>
> 初めて見るエラーなので調べてみましたが、わかりませんでした。
> なお、私の方で実行した際には、エラーは出ませんでした。
> 当方の環境 ⇒ CentOS5.5+MySQL5.1.53
>
> ちなみに、Version情報やPlatform等が書いてあると
> 答えやすくなるのは古今東西共通していると思います。
> また、該当テーブルを作成したcreate文もあったら良いですね。
>
> > 動作確認をしたところ、特に問題はないのですが、
>
> 問題無いというのは、
> ? エラーは出たが正常に実行された(INDEXが正しく作られた)
> ? 作成しなくてもよいINDEXだった
>
> どちらでしょう?
>
> なんとなく環境の問題のような気がしますが・・・
> お役に立てなくて申し訳ありません。
>
>
>
> (2011/04/07 11:54), mysql@xxxxx wrote:
> > カワバタと申します。
> >
> > Innodbのテーブルに対してインデックスを追加したら、
> > 以下のエラーが出力されました。
> > 動作確認をしたところ、特に問題はないのですが、
> > どのような原因で以下のエラーが出力されるのか
> > ご存じの方がいらっしゃいましたらご教授お願いします。
> >
> > ■実行クエリ
> > ALTER TABLE table ADD INDEX key1 (col1, col2, col3, col4);
> >
> > ■エラーメッセージ
> > [ERROR] Got error 159 when reading table './schema/table'
> >
> > ■perror
> > MySQL error code 159: The table changed in storage engine
> >
> > 以上、宜しくお願いします。
> >
> >
> >
> >
>


投稿者 xml-rpc : 2011年4月 7日 13:01
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/102967
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。