另一个用于监控数据库活动的实用工具是pg_locks
系统表。它允许数据库管理员查看有关锁管理器中未释放锁的信息。例如,此功能可用于
-
查看当前所有未释放的锁、特定数据库中所有关系上的锁、特定关系上的所有锁或特定PostgreSQL会话持有的所有锁。
-
确定当前数据库中未授予锁最多的关系(这可能是数据库客户端之间争用的来源)。
-
确定锁争用对整体数据库性能的影响,以及争用程度如何随整体数据库流量变化。
pg_locks
视图的详细信息请参见第52.12节。有关使用PostgreSQL锁定和管理并发性的更多信息,请参阅第13章。