我正在尝试删除我的数据库并通过命令行创建一个新数据库。
我使用登录,psql -U username然后执行 a \connect template1,然后执行DROP DATABASE databasename;.
psql -U username
\connect template1
DROP DATABASE databasename;
我得到错误
其他用户正在访问数据库 databasename
我关闭了 Apache 并再次尝试,但仍然出现此错误。难道我做错了什么?
您可以从命令行运行dropdb命令:
dropdb 'database name'
请注意,您必须是超级用户或数据库所有者才能删除它。
您还可以检查pg_stat_activity视图以查看当前针对您的数据库发生的活动类型,包括所有空闲进程。
pg_stat_activity
SELECT * FROM pg_stat_activity WHERE datname='database name';
请注意,从 PostgreSQL v13 开始,您可以使用以下命令自动断开用户连接
DROP DATABASE dbname WITH (FORCE);
要么
dropdb -f dbname