mysql 进程列表_MySQL进程列表历史维护

我正在考虑编写一个工具来维护查询历史记录,它花费的时间超过5秒。在

工具后端设置如下所示:Table1:QUERY_META

queryId int() (PK)

query text

regDate date

Table2: QUERY_STAT

queryId: int() (FK)

runDate: date (date of Run)

avgTimeTaken:int()

noOfRuns: int()

为了使它“聪明”,我希望只维护唯一的查询。我的意思是,假设我有这样的问题:

a)SELECT a,b,c from table1 where x='x1' and y != 'y1';(10秒)

b) SELECT a,b,c from table1 where x='x2' and y != 'y2';(10秒)

现在基本上,我想存储如下查询:

^{pr2}$

这将使我们更容易看到有多少相同类型的查询正在运行。在

对于我的工具来说,这意味着:规范化where子句。

我可以在关键字WHERE处拆分,这就是我的问题变得严重的地方。如何规范化/标准化where子句?

有相当多的比较运算符,我不知道简单的方法来做字符串操作。我现在不担心多个where子句。在

我认为自己能够熟练地使用Python、MySQL(但对任何能完成任务的东西都持开放态度)。在

我的后备计划是依靠select并在QUERY_META表上添加一个queryTag列。它将作为一个按列分组的psuedo!这里也有一些复杂的问题,但是在这里输入这些内容会延长已经很长的帖子。在

由于工具的访问群体和一些系统限制,我不能为此使用慢速查询日志。在

如果有一个工具已经做到了这一点,请指点我,因为我很难确定谷歌要做什么。在

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值