我想在 Mac OS 10.6 上卸载 postgres,然后以全新安装和空数据库重新启动。
我已经终止所有正在运行的 postgres 进程并尝试删除 postgres 数据目录,但是没有任何效果(见下文):六个数据库仍然存在。
我也尝试查找 PGDATA 变量,但它似乎是空的。这些数据库位于哪里?
delirium:~ ap257$ kill 7495
delirium:~ ap257$ sudo su - postgres
Password:
delirium:~ postgres$ rm -rf /usr/local/pgsql/
[从二进制文件重新安装 postgres]
delirium:~ ap257$ sudo su - postgres
Password:
delirium:~ postgres$ export PATH=$PATH:/usr/local/pgsql/bin/
delirium:~ postgres$ psql
Password:
psql (8.4.4)
Type "help" for help.
postgres=# \l
List of databases
Name | Owner | Encoding | Collation | Ctype | Access privileges
------------------+----------+----------+-----------+-------+-----------------------
osqa | postgres | UTF8 | C | C | =Tc/postgres
: postgres=CTc/postgres
: osqa=CTc/postgres
postgres | postgres | UTF8 | C | C |
production | postgres | UTF8 | C | C | =Tc/postgres
: postgres=CTc/postgres
: anna=CTc/postgres
template0 | postgres | UTF8 | C | C | =c/postgres
: postgres=CTc/postgres
template1 | postgres | UTF8 | C | C | =c/postgres
: postgres=CTc/postgres
template_postgis | postgres | UTF8 | C | C |
(6 rows)
postgres=# \q
delirium:~ postgres$ echo $PGDATA
这些数据库为什么不会消亡?
答案1
您总是可以执行lsof | grep pg
或类似的操作(Postgres)来查看是否有一些与 postgresql 相关的进程打开了任何东西。pg 相当模糊,但我相信筛选起来不会太多。
答案2
您的进程 7495 是一个使用 postgresql 数据库的 python 进程。