24.4.1 MySQL サーバーのデバッグ

MySQL で非常に新しい一部の機能を使用している場合は、--skip-new (安全でない可能性がある新しい機能がすべて無効にされます) を指定して mysqld の実行を試みることができます。セクションB.5.4.2「MySQL が繰り返しクラッシュする場合の対処方法」を参照してください。

mysqld が起動しない場合は、セットアップを妨げている my.cnf ファイルがないことを確認してください。my.cnf の引数をチェックするには mysqld --print-defaults を使用します。mysqld --no-defaults ... を指定して起動するとそれらの引数は使用されません。

mysqld が CPU やメモリーを使い尽くしてしまうようになった場合、またはハングアップする場合は、mysqladmin processlist status を使用すると、ユーザーが長時間かかるクエリーを実行しているかどうかを確認できます。パフォーマンスの問題、または新しいクライアントが接続できないことに関する問題がある場合は、ほかのウィンドウで mysqladmin -i10 processlist status を実行すると役に立つことがあります。

mysqladmin debug コマンドは、使用されているロック、使用されているメモリー、およびクエリーの使用状況に関する情報を MySQL ログファイルにダンプします。これは一部の問題の解決に役立つことがあります。また、このコマンドでは、MySQL をデバッグ用にまだコンパイルしていなくても、役立つ情報が提供されます。

一部のテーブルが徐々に遅くなるという問題がある場合は、OPTIMIZE TABLE または myisamchk を使用してテーブルを最適化することを試みてください。第5章「MySQL サーバーの管理 を参照してください。また、遅いクエリーを EXPLAIN でチェックしてください。

また、使用している環境に特有である可能性がある問題については、このマニュアルの OS 固有のセクションをお読みください。セクション2.1「一般的なインストールガイド」を参照してください。


User Comments
Sign Up Login You must be logged in to post a comment.