[前][次][番号順一覧][スレッド一覧]

mysql:15625

From: Etsuo SUMIYA <Etsuo SUMIYA <sumiya-e@xxxxxxxxxx>>
Date: Wed, 31 Aug 2011 18:27:12 +0900 (LMT)
Subject: [mysql 15625] Re: mysql 5.5.9でのset names sjisで性能低下

sumiyaといいます。

From: HIRATSUKA Sadao <hiratsuka.sadao@xxxxxxxxxx>
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@xxxxxxxxxx>

> > "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を使うということにしたいと思います。ありがとうござい
ました。

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

[前][次][番号順一覧][スレッド一覧]

     15623 2011-08-30 20:29 [Etsuo SUMIYA <sumiya] mysql 5.5.9でのset names sjisで性能低下 
     15624 2011-08-31 12:33 ┗[HIRATSUKA Sadao <hir]                                       
->   15625 2011-08-31 18:27  ┗[Etsuo SUMIYA <sumiya]                                     
     15626 2011-09-01 09:50   ┗[HIRATSUKA Sadao <hir]