首页 > 解决方案 > 我如何知道哪个进程或用户正在使用 PostgreSQL 的 template1 数据库?

问题描述

我正在尝试在客户的 PostgreSQL 8.1 系统上创建一个数据库(一些旧的 Windows 操作系统;我不确定是哪个)(是的,我知道它很古老,但它正在工作。)。它告诉另一个用户正在访问源数据库 template1。该系统上应该有的唯一用户是我公司提供的程序和脚本。我可以使用 template0 创建一个数据库,但我宁愿不这样做,以防 template1 中有一些重要的东西(我对此表示怀疑)。我不想重新启动 PostgreSQL 服务,因为这会中断生产监控,尽管生产不会受到影响。

那么,有什么方法可以找到使用 template1 数据库的进程吗?

标签: postgresql

解决方案


您可以尝试查询pg_stat_activity

SELECT *
       FROM pg_stat_activity
       WHERE datname = 'template1';

推荐阅读