我是靠谱客的博主 洁净火,这篇文章主要介绍PostgreSQL强制删除正在被使用的库,现在分享给大家,希望可以做个参考。

在PostgreSQL中,如果一个库正在被使用,我们是无法直接去删除的,会收到如下报错:

复制代码
1
2
3
4
bill@bill=>drop database db03; ERROR: database "db03" is being accessed by other users DETAIL: There is 1 other session using the database.

因此,我们需要禁止会话再连接到库中,同时中断掉当前所有连接的会话才可以。

下面是具体的操作方法:

1、设置数据库为禁止连接

复制代码
1
2
3
4
UPDATE pg_database SET datallowconn = 'false' WHERE datname = 'db_name';

2、中断当前库中所有连接会话

复制代码
1
2
3
4
SELECT pg_terminate_backend(pid) FROM pg_stat_activity WHERE datname = 'db_name';

3、删除数据库

复制代码
1
2
drop database db_name;

最后

以上就是洁净火最近收集整理的关于PostgreSQL强制删除正在被使用的库的全部内容,更多相关PostgreSQL强制删除正在被使用内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(68)

评论列表共有 0 条评论

立即
投稿
返回
顶部