猫型iPS細胞研究所

Windows、Linux、iOS、DB、Network

DataBase MySQL

MySQLのエラー、クエリ、スロークエリのログ

投稿日:2013年5月26日 更新日:

全て /etc/my.cnf の [mysqld] に追記してサーバーを再起動すれば出力されるようになります。

エラーログは開発時には警告も出力しておけばよいでしょう。

クエリログは全てのSELECTが出力されます。
運用が始まったら消しておくべきでしょう。

スロークエリは指定秒以上のSELECTを出力します。
運用が始まってからも活躍することでしょう。

[mysqld]
#エラーログ
log-error=/var/log/mysql_error.log
log-warnings=1 #0:警告はログなし、1:警告もログ出力

#クエリログ
log=/var/log/mysql_query.log

#スロークエリ
log-slow-queries=/var/log/mysql_slow.log
long-query-time=1 #1秒以上のものを出力
log-queries-not-using-indexes #indexを使用しなかった場合に出力

ちなみにmysqlユーザーは/var/log/には権限がありません。
もし例のように/var/log/にログを出力するのであれば、
root等で事前ログファイルを作成してから所有権を変更するか、パーミッションを変更します。

空ファイルを作成
# cd /var/log/
# touch mysql_query.log

所有権をmysqlに変更する
# chown mysql mysql_query.log

もしくはパーミッションを変更する
# chmod 777 mysql_query.log

Gooleアドセンス用336

Gooleアドセンス用336

-DataBase, MySQL

執筆者:

関連記事

sqlserver

「.NET」と「ASP.NET」からのSQL Serverへのコネクションを確認する(1)

INDEX1 コネクション数と状態を確認する2 コネクションプールとは3 コネクションを制御する設定 コネクション数と状態を確認する SQLSERVERのコネクション数を確認するには下記のSQLを実行 …

mysql

MySQLにファイルからSQLを読み込む

MySQLにファイルからSQLを読み込む方法は 意外と知られていない方法ですのでメモっておきます。 INDEX1 MySQLにログイン中の場合2 スクリプトから実行する場合3 おまけのコマンドで指定す …

sqlserver

SQLSERVER saでログインできるようにする

私はsaも設定しておくべきだと思います。 そこでsaログインするための確認ポイントです。 INDEX1 ログインを有効にする2 サーバー認証の設定3 名前付きパイプ ログインを有効にする Manage …

sqlserver

SQLSERVER「Login failed for user ‘xxxxxxx’. 理由: 指定された名前に一致するログインが見つかりませんでした」

Windows認証でAdministratorを指定しているのにログインできない。 そんな場合は以下の手順でAdministratorユーザーを作成します。 INDEX1 起動時のパラメーターの変更2 …

mysql

MySQLの連続INSERTを高速にする

もししらなければ確実に、そして恐ろしく効果を発揮できると思います。 INSERTを連続実行する際にボトルネックとなるのはコミットです。 オートコミットをオフにするという手もあるのですが、 INSERT …