PGSQL删除数据库里提示数据库有连接会话,不能删除怎么办?

由于现今大部分的应用是使用了数据库连接池的,所以当页面或接口访问完后,数据库的连接并不会马上断开,这导致有时候想用navicat删除某些因测试目的建立的数据库时,会导致删除失败,提示

Error: database "*" is being accessed by other users Detail: There are * other sessions using the database.”,

遇到这种情况怎么办呢?可以用一条语句把连接主动结束掉,在navicat的查询窗口执行以下sql语句即可

SELECT CAST(pg_terminate_backend(pid) AS VARCHAR(10)) FROM pg_stat_activity WHERE datname='test-db';

注意,上述语句里的test-db要替换成您将要删除的数据库名即可;

猜你喜欢

转载自blog.csdn.net/one_and_only4711/article/details/123416754