在PostgreSQL中,我如何获得预准备语句的正文?

问题描述 投票:1回答:1

我的postgresql慢查询日志显示如下行:

2014-07-11 21:00:34 GMT LOG:  duration: 539.036 ms  execute S_1: COMMIT
2014-07-11 21:00:39 GMT LOG:  duration: 608.964 ms  execute S_1: COMMIT
2014-07-11 21:00:39 GMT LOG:  duration: 604.911 ms  execute S_1: COMMIT

有没有办法让我检索准备好的语句S_1是什么,以便我可以看到哪个查询速度慢?

postgresql postgresql-9.2
1个回答
0
投票

它就在日志消息的末尾。在这种情况下,准备好的声明是COMMIT

此格式适用于通过extended query protocol准备的语句。如果您正在使用SQL PREPARE,您将在以下行的DETAIL消息中找到原始语句:

2014-07-11 21:00:39 GMT LOG:  duration: 0.118 ms  statement: EXECUTE q
2014-07-11 21:00:39 GMT DETAIL:  prepare: PREPARE q AS SELECT 1;
© www.soinside.com 2019 - 2024. All rights reserved.