Postgresql数据库删除时提示 3 other sessions using the database

Postgresql数据库不能删除成功,并提示
ERROR: database “appbuilder_001” is being accessed by other users
DETAIL: There are 3 other sessions using the database.
Postgresql数据库删除时提示 3 other sessions using the database_第1张图片
翻译如下:
错误:数据库“appbuilder_001”正在被其他用户连接。
细节:有3个地方在使用这个数据库。
解决方法:
断开连接到这个数据库上的所有链接,再删除数据库。

一、PostgreSQL 9.2 及以上版本,替换SQL中的dbname,执行下面的语句:

SELECT pg_terminate_backend(pg_stat_activity.pid)
FROM pg_stat_activity
WHERE datname='dbname' AND pid<>pg_backend_pid();

如果结果显示不为空,多执行几次,直至返回为空
在这里插入图片描述
二、删除数据库

语句说明:
pg_terminate_backend:用来终止与数据库的连接的进程id的函数。
pg_stat_activity:是一个系统表,用于存储服务进程的属性和状态。
pg_backend_pid():是一个系统函数,获取附加到当前会话的服务器进程的ID。

你可能感兴趣的:(Postgresql,Postgresql)