更新时间:2024-06-20 GMT+08:00
删除数据库失败,提示有session正在连接
问题现象
删除数据库失败,提示有session正在连接。
原因分析
删除数据库时可能当前仍有session正在连接数据库,或者有session在不停地连接该数据库,故删除数据库失败。需要查看数据库中的session,检查是否仍有session在连接,如果有,排查连接数据库的机器,停止连接后再删除数据库。
处理方法
- 使用SQL客户端工具连接数据库。
- 执行如下命令查看当前会话。
1
SELECT * FROM pg_stat_activity;
查询结果中的关键字段,说明如下:
- datname:用户会话所连接的数据库名称。
- usename:连接数据库的用户名。
- client_addr:连接数据库的客户端主机的IP地址。
在查询结果中,找出待删除的数据库名称及对应的客户端主机IP地址。
- 请根据客户端主机的IP地址排查连接数据库的机器及应用,并停止相关的连接。
1
CLEAN CONNECTION TO ALL FOR DATABASE database_name;
- 重新执行删除数据库的命令。
1
DROP DATABASE [ IF EXISTS ] database_name;
父主题: 数据库使用