【Pg数据库】删除数据库失败,提示有session正在连接

目录

问题现象

Navicat 删除 PostgreSQL 数据库时失败,提示:正在被其他用户访问(有session正在连接)如何处理?
如下所示:

bash 复制代码
ERROR: database 'xXx' is being accessed by other users
DETAIL: There are 5 other sessions using the database.

原因分析

  • 可能当前仍有session正在连接数据库,或者有session在不停地连接该数据库,故删除数据库失败。
  • 需要查看数据库中的session,检查是否仍有session在连接,如果有,排查连接数据库的机器,停止连接后再删除数据库。

处理方法

1.断开所有连接

sql 复制代码
SELECT 
	pg_terminate_backend(pg_stat_activity.pid)
FROM 
	pg_stat_activity
WHERE 
	datname='数据库' 
AND 
	pid<>pg_backend_pid();

2. 查找相关连接数据库的主机信息

(如果有程序会不停的连的话只能把连的程序停了才能删除)

sql 复制代码
SELECT 
	*
FROM 
	pg_stat_activity
WHERE 
	datname='数据库' 

3. 再次删除

sql 复制代码
drop database 数据库;

总结

相关推荐
f***28144 分钟前
Springboot中使用Elasticsearch(部署+使用+讲解 最完整)
spring boot·elasticsearch·jenkins
TDengine (老段)7 分钟前
TDengine Python 连接器进阶指南
大数据·数据库·python·物联网·时序数据库·tdengine·涛思数据
你怎么知道我是队长12 分钟前
C语言---文件读写
java·c语言·开发语言
赵渝强老师15 分钟前
【赵渝强老师】OceanBase的配置文件与配置项
数据库·oceanbase
咕白m62520 分钟前
通过 C# 快速生成二维码 (QR code)
后端·.net
踏浪无痕26 分钟前
架构师如何学习 AI:三个月掌握核心能力的务实路径
人工智能·后端·程序员
小毅&Nora43 分钟前
【后端】【SpringBoot】① 源码解析:从启动到优雅关闭
spring boot·后端·优雅关闭
嘻哈baby1 小时前
从TIME_WAIT爆炸到端口耗尽:Linux短连接服务排查与优化
后端
玖日大大1 小时前
OceanBase SeekDB:AI 原生数据库的技术革命与实践指南
数据库·人工智能·oceanbase
wszy18091 小时前
外部链接跳转:从 App 打开浏览器的正确姿势
java·javascript·react native·react.js·harmonyos