pgsql 如何删除仍有活动链接的数据库

删除数据库的命令:

drop database if exists testdb;

但是这个命令可能会报错:

类似于:

database "xxx" is being accessed by other users.
DETAIL: There is x other session using database.

如:

表示要删除的数据库上还有其他活动链接。

解决方法:

断开该数据库上所有链接。

sql:

select pg_terminate_backend(pid) from pg_stat_activity where datname='{0}';

其中:

pg_terminate_backend用来终止与数据库的连接的进程id的函数。

pg_stat_activity是一个系统表,用于存储服务进程的属性和状态。

补充:解决postgresql 数据库因存在连接删除不成功的问题

postgresql 数据库因存在连接删除不成功问题

#psql -d dbname

#SELECT * FROM pg_stat_activity;

找到要删除数据库的连接pid

kill -9 pid

重新删除db

以上为个人经验,希望能给大家一个参考,也希望大家多多支持呐喊教程。如有错误或未考虑完全的地方,望不吝赐教。

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。