如何在pg_stat_activity中查看查询的模式?

5

我正在解决一些应用程序性能问题,主要是慢查询的问题。我们使用的是PostgreSQL 9.2版本。我可以轻松地查看正在进行的查询:

postgres=# select now() - query_start, query from pg_stat_activity where state <> 'idle';

00:00:01.535388 | select bla from product where ...

我需要知道查询中列出的表所在的模式。由于同一数据库中有数百个不同模式中的“产品”表,因此如何查看正在查询哪个“产品”表。

1个回答

1

pg_stat_activity 视图调用 pg_stat_get_activity(pid int) 内部函数。 您无法更改结果中的查询文本。 目前只有一种解决方案 - 使用模式名称调用查询:

select bla from myschema.product where ...

嗯...有可能发现一个进程的搜索路径(search_path)吗? - David Tinker
我不知道该怎么做。Postgres文档中没有提到这样的可能性(据我所知)。 - klin

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接