2011年8月31日

[mysql 15625] Re: mysql5.5.9でのset namessjisで性能低下

sumiyaといいます。

From: HIRATSUKA Sadao <hiratsuka.sadao@xxxxx>
Subject: [mysql 15624] Re: mysql 5.5.9でのset names sjisで性能低下
Date: Wed, 31 Aug 2011 12:33:06 +0900
Message-ID: <20110831123306.2AD2.C8FC6C14@xxxxx>

> > "set names sjis"を実行すると、t2の

> > rowsが10となり、indexがきかず、全スキャンかかってしまうようです。
>
> いただいたテストケースは
> MySQL 5.5.11で再現して、MySQL 5.5.12だと再現しませんでした。
> たぶん↓これです。
> http://bugs.mysql.com/bug.php?id=60625

最新では修正済みだったんですね。今年の4月頃、遅くなる現象はつかん
でいたのですが、時間が取れず、5.1.xを使用してました。
問題を放って置くわけにもゆかず調べたので、古いシステムで失礼しまし
た。

> ただそれとは別に
> 最新のMySQL 5.5.15でも再現するケースを作れたので、バグ報告してみました。
> http://bugs.mysql.com/bug.php?id=62307
>
> 仕組みとしては、tm = '20:01'という検索条件を
> CONVERT(tm USING SJIS sjis) = '20:01'
> に変換するわりと残念なロジックがMySQL 5.5から入っていて、
> これの発動条件の一つがcharacter_set_connection = ucs2あるいはsjis
> となっているようです。
>
> ucs2のためにはこのロジックがどうしても必要なようですが、
> sjisは巻き添えを喰らった感があります。

同じ原因なのかもしれませんが、sjisにすると、日付や時刻などの検索条
件として,DBに記録されているのと同じ書式、1:1:0ならば01:01:00と記述
しないとquery結果が出ないなど色々と問題がありそうですね。

今回は、5.1.xを使うということにしたいと思います。ありがとうござい
ました。

ありがとうございました。


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




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