我可能是用惯了 ms sql 的那个 profiler, 现在想开始监测一下 mysql 客户端的所有发过来的query。 于是网上开始找了一些,
不过简直都太差劲了,不光难用,基本上都不能实时的检测到库户端发过来的语句。 哪位知不知道有好一点的,哎呀,现在都不求好不好用了,谁能分享个能实时监测到客户端发过来的所有 Query 的。
不过简直都太差劲了,不光难用,基本上都不能实时的检测到库户端发过来的语句。 哪位知不知道有好一点的,哎呀,现在都不求好不好用了,谁能分享个能实时监测到客户端发过来的所有 Query 的。
解决方案 »
- 这个真急,有什么好算法
- 请问:MySQL哪个版本支持表分区,又能稳定运行?
- 小白问题! 插入时 "\" 不能正常显示,怎么解决?
- MySQL下如何得到网络上远程计算机的磁盘空间信息?
- 我的数据库文件里面缺少MYI和MYD文件怎么办?
- NT系统如何安装2个mysql?注意,不是Linux,是NT
- 使用Navicat for MySQL 把root 权限点没有了~
- mysql时间戳问题
- 小白求问一个sql题:如何计算一棵树两个节点之间的距离?
- mysql 可以把 存储过程(结果为一个集合)当做一个表来查么?结果集当赋值给一个变量?
- 如何得到mysql每一列的类型呢
- mysql proxy在windows下的使用指导
http://dev.mysql.com/doc/refman/5.1/zh/database-administration.html#query-log
如果你想要知道mysqld内部发生了什么,你应该用--log[=file_name]或-l [file_name]选项启动它。如果没有给定file_name的值, 默认名是host_name.log。所有连接和语句被记录到日志文件。当你怀疑在客户端发生了错误并想确切地知道该客户端发送给mysqld的语句时,该日志可能非常有用。
mysqld按照它接收的顺序记录语句到查询日志。这可能与执行的顺序不同。这与更新日志和二进制日志不同,它们在查询执行后,但是任何一个锁释放之前记录日志。(查询日志还包含所有语句,而二进制日志不包含只查询数据的语句)。 服务器重新启动和日志刷新不会产生新的一般查询日志文件(尽管刷新关闭并重新打开一般查询日志文件)。在Unix中,你可以通过下面的命令重新命名文件并创建一个新文件:shell> mv hostname.log hostname-old.log
shell> mysqladmin flush-logs
shell> cp hostname-old.log to-backup-directory
shell> rm hostname-old.log
在Windows中,服务器打开日志文件期间你不能重新命名日志文件。你必须先停止服务器然后重新命名日志文件。然后,重启服务器来创建新的日志文件。
如果直接在MYSQL中修改相应系统变量,则不需要。
port=3306...log=
log-error=
log-slow-queries=
log-bin=