mysql:5111
From: とみたまさひろ <とみたまさひろ <tommy@xxxxxxxxxx>>
Date: Wed, 6 Feb 2002 17:21:36 +0900
Subject: [mysql 05111] Re: クエリキャッシュのクリア
とみたです。 On Wed, 06 Feb 2002 15:36:30 +0900 太田 龍太郎 <ryutaro.ota@xxxxxxxxxx> wrote: > 工場などの消費電力を測定するシステムで、計測データ(1分間隔で収集、2年 > 程度を想定)をMySQLに格納しています。 > その結果、一つのテーブルが数GB程度になりますので、パフォーマンスが低下 > しないようにしたい思っています。インデックスはありますが、もし各レコード > が分散した場所に保存されていれば、データのクエリ時に時間がロスするかと懸 > 念しています。(遅くなったという実測値はないですので、あくまで予想です。) > > ここで、「フラグメンテーション」という言葉は、1つの論理単位(ファイル、 > レコード)の書き込まれる場所が分散してしまうという現象に使っています。 > 分散して書き込まれている場合、その1つの論理単位を読む場合に、それぞれ > の分散した場所を探して読み込む結果、アクセス速度が低下するのではないかと > 思います。 ああ、そういうことですか。 > (2)MyISAMファイルの中にレコードが順番に並んでいない状態(インデックス > から見れば、順番に並んでいるデータだが、実際の各レコードは分散した位置に > 配置されている) > (2)は、OSから見れば1つのファイルであり、その中身のデータの問題なので、解 > 決できないと思います。 myisamchk の --sort-records=# でデータファイル内のレコードの並べ替えがで きると思います。ただし、データファイルをいじるのは危険なので、ちゃんとバッ クアップを取ってからにしましょう。 # 私はずっと前、isamchk でデータを壊したことがあります (^^; > FLUSH TABLES > と入力すれば、コマンドは通ります。 > > > RESET QUERY CACHE; > > と入力すると、文法エラーになりました。 QUERY CACHE はバージョン 4.0.1 以降の機能らしいので、3.23.x ではコマンド がないのでしょう。 > その他、以下は全てだめでした。マニュアルを見ても、正しい入力方法が分かり > ませんでした。 > > mysql> RESET QUERY CACHE; > mysql> RESET QUERY CACHE @tab; > mysql> RESET QUERY CACHE @ tab; > mysql> RESET QUERY CACHE @ MST_ALARM; > mysql> RESET QUERY CACHE at MST_ALARM; > mysql> RESET QUERY CACHE from MST_ALARM; > mysql> FLUSH QUERY CACHE > mysql> FLUSH QUERY CACHE @MST_ALARM; > mysql> FLUSH QUERY CACHE @ MST_ALARM; > mysql> FLUSH QUERY CACHE at MST_ALARM; > mysql> FLUSH QUERY CACHE from MST_ALARM; > mysql> FLUSH RESET QUERY CACHE from MST_ALARM; > mysql> FLUSH RESET QUERY CACHE; 「@tab」はマニュアルの誤記ですね。たぶん、texinfo での表の区切りの命令が そのまま html に紛れ込んじゃってるんだと思います。 -- とみたまさひろ <tommy@xxxxxxxxxx> 日本MySQLユーザ会 http://www.mysql.gr.jp
5090 2002-02-05 09:25 [太田 龍太郎 <ryutaro] クエリキャッシュのクリア 5100 2002-02-06 02:11 ┗[とみたまさひろ <tomm] 5109 2002-02-06 15:36 ┗[太田 龍太郎 <ryutaro] -> 5111 2002-02-06 17:21 ┗[とみたまさひろ <tomm] 5131 2002-02-09 10:40 ┗[太田 龍太郎 <ryutaro] Re: クエリキャッシュのクリア ( お礼)