Postgres 9.3 pg_stat_activity.query 长度不会改变

Postgres 9.3 pg_stat_activity.query length won't change

随着时间的推移,有一些大的 SQLs 占用了与数据库的连接,我希望能够看到查询,但是 pg_stat_activity.query 默认情况下会截断超过 256 个字符的任何内容,所以我编辑了 postgresql.conf 以包含

track_activities = on
track_activity_query_size = 2048

然而,即使在更改此设置并重新启动 postgres 之后

select query from pg_stat_activity;
select pg_stat_get_backend_activity(id);

仍然只返回 SQL 的前 256 个字符。

我知道我正在编辑正确的配置文件,因为它是由

返回的
show conf_file;

但我不确定为什么它显示的字符不超过 256 个。

查询长度确实发生了变化,我只是看不到它,因为 pgAdmin 也在截断输出。

我知道这有点旧,但我最近需要同样的功能。如果您想 运行 来自 PgAdmin 的查询(而不是求助于命令行),您有几个选择。

  1. 首先,您可以更改输出的长度。在主 PgAdmin window 中转到 File > Options > Query Tool > Query Editor > Max. characters per column(您将在其中看到默认值 256)。
  2. 或者,您可以将输出发送到文件。不要单击通常的小绿色 'go' 箭头来执行命令,而是查看右侧的两个按钮。有一个由绿色小箭头和蓝色软盘组成的图标。这是'Execute query, write results to file'。这将为您提供方便的 csv 文件中的所有内容,您可以在文本编辑器中打开该文件以查看所有内容。