为什么我不能删除 postgres 数据库
Why am I not able to drop postgres database
我正在尝试删除 postgres 数据库。但我总是得到一个
There is 1 other session using the database
错误。
我尝试使用此命令停止所有会话
select pg_terminate_backend(pid) from pg_stat_activity where datname='my_database';
这是结果
pg_terminate_backend
----------------------
(0 rows)
然后我使用了这个命令
DROP DATABASE my_database;
这是完整的错误消息
ERROR: database "my_database" is being accessed by other users
DETAIL: There is 1 other session using the database.
我正在使用 postgres 12。
确保没有用户可以连接到您的数据库(超级用户权限,超级用户仍然可以连接):
ALTER DATABASE mydb CONNECTION LIMIT 0;
强制断开连接到此数据库的所有客户端(数据库所有者权限):
SELECT pg_terminate_backend(pid)
FROM pg_stat_activity
WHERE datname = 'mydb';
然后使用你的drop命令删除数据库(数据库所有者权限):
DROP DATABASE mydb;
我正在尝试删除 postgres 数据库。但我总是得到一个
There is 1 other session using the database
错误。
我尝试使用此命令停止所有会话
select pg_terminate_backend(pid) from pg_stat_activity where datname='my_database';
这是结果
pg_terminate_backend
----------------------
(0 rows)
然后我使用了这个命令
DROP DATABASE my_database;
这是完整的错误消息
ERROR: database "my_database" is being accessed by other users
DETAIL: There is 1 other session using the database.
我正在使用 postgres 12。
确保没有用户可以连接到您的数据库(超级用户权限,超级用户仍然可以连接):
ALTER DATABASE mydb CONNECTION LIMIT 0;
强制断开连接到此数据库的所有客户端(数据库所有者权限):
SELECT pg_terminate_backend(pid) FROM pg_stat_activity WHERE datname = 'mydb';
然后使用你的drop命令删除数据库(数据库所有者权限):
DROP DATABASE mydb;