删除 数据库 的命令:
1 |
drop database if exists testdb; |
但是这个命令可能会报错:
类似于:
1 2 |
database "xxx" is being accessed by other users. DETAIL: There is x other session using database . |
如:
表示要删除的数据库上还有其他活动 链接 。
解决方法:
断开该数据库上所有链接。
sql:
1 |
select pg_terminate_backend(pid) from pg_stat_activity where datname= '{0}' ; |
其中:
pg_terminate_backend 用来终止与数据库的连接的进程id的函数。
pg_stat_activity 是一个系统表,用于存储服务进程的属性和状态。
补充:解决postgresql 数据库因存在连接删除不成功的问题
postgresql 数据库因存在连接删除不成功问题
1 2 3 |
#psql -d dbname
# SELECT * FROM pg_stat_activity; |
找到要删除数据库的连接pid
1 |
kill -9 pid |
重新删除db
以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。如有错误或未考虑完全的地方,望不吝赐教。
原文链接:https://blog.csdn.net/qq_35462323/article/details/102797726
查看更多关于pgsql 如何删除仍有活动链接的数据库的详细内容...