MySQL 4.0.22 でログイン履歴とログインした際にそのユーザが発行したSQLのログをとりたいです。


ログはコンソールでログインして実行したSQLだけとれればいいのですが、
クエリログをONにすればログインや、SQLのログが取れるのですが、クエリログではアプリケーションで実行したものもすべてのログをとってしまうため非常にログが大きくなってしまい困っています。。

クエリログに制限を設けてログとして出す情報をしぼりことはできるのでしょうか?

またmysqlでコンソールでsqlを実行した場合、historyとして前回のsqlがキーボードより「↑」を押すと見れますが、これをどうにかして利用できないですかね。。?

OSはFreeBSDです。

知っている方、アイデアのある方、ご返信お待ちしてます~。

回答の条件
  • 1人3回まで
  • 登録:
  • 終了:2007/05/19 19:15:38
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答2件)

id:b-wind No.1

回答回数3344ベストアンサー獲得回数440

ポイント35pt

mysql コマンドの実行履歴は、$HOME/.mysql_history と言うファイルに記録されます。

単なるテキストファイルなので改ざんは容易ですが、ある程度は追いかけられます。

MySQL AB :: MySQL 4.1 リファレンスマニュアル :: 4.9.1 クライアントサイドのスクリプトとユーティリティの概要

id:reiko-5555

おぉなるほど!ありがとうございます!

権限の問題がクリアできればこちらを使うと操作のログが取れそうですね!

2007/05/13 21:20:57
id:kurukuru-neko No.2

回答回数1844ベストアンサー獲得回数155

ポイント35pt

クエリーログの制限は出来ません。

スロークエリーログならある程度制限された

情報が出力を得る事が出来ます。

http://h50146.www5.hp.com/products/software/oe/linux/summary/ref...

MyProfi(MySQL log analyzer and profiler)

http://sourceforge.net/projects/myprofi

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません