プロが教えるわが家の防犯対策術!

vb.net+mysql(OS:WindowsXP)で趣味のコーディングをしています。
動かしているのは、毎日20時間程度かけて実行しているバッチ処理です。
各テーブルに、最大で数百万~1千数百万レコード程度を格納しています。

最近、プログラム内で、mysqlが何の例外も吐かずに止まってしまう(もしくは落ちている?)という現象が多発しています。
現象が起きるSQL文は毎日違い、同じSQLでも、値が返ってくる日と返って来ない日があります。

mysqlの全体的なチューニングが必要なのだろうと思っているのですが、
とりあえずmysqlの各種パラメータの監視をする必要があるのだろうなと思っています。
何か典型的な手法などはあるでしょうか。

(show status で返ってくる値を監視しときゃいいんだよ、とどこかで見た気がするのですが、
 それってみんな自分でイチから監視プログラムをハンド作成しているのでしょうか?)

よろしくお願いします。

A 回答 (2件)

>プログラム内で、mysqlが何の例外も吐かずに止まってしまう(もしくは落ちている?)という現象が多発しています。


>現象が起きるSQL文は毎日違い、同じSQLでも、値が返ってくる日と返って来ない日があります。

まずは、ネットワークなり、MySQLサーバーなりのログを見ましょう。何らかの手がかりが、出ている可能性が高いと思いますよ。

また、MySQLのバージョンを、MySQL 4.1、5.0、5.1といったレベルまで、最低限提示しましょう。大きな機能拡張、一部の仕様変更があります。
特にMySQL 5.1では、チューニングに関する機能が、「MySQL 5.1.xで仕様変更」なんてのもあったと記憶しています。

この回答への補足

すみません、ご指摘ありがとうございます。
まず、MYSQLサーバはアプリケーションサーバと同一サーバです。
ログはどのファイルを見ればよいでしょうか。。。

MYSQLのバージョンは5.1.33です。

よろしくお願いします。

補足日時:2011/04/17 09:27
    • good
    • 0

ログの出される場所はmysql/data/***の*の部分にエラーログとかでます。


ここにmysqlのログが全部出ます。
でも、ログを見たからと行って、落ちてしまう解決にはなりませんね・・・。

mysqlの負荷改善は『EXPLAIN』でindexが使われてるか見てみましょう!
もしindexを張っていなければ、indexを張る所からはじめましょう!!

でその次は、『スロークエリーログ』を見てみましょう!

この2つがすぐにできる負荷改善です。

もしも、時間があるのであれば、マスターとスレーブについて調べると良いと思います。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!