PostgreSQL 服务

PostgreSQL Services

有人可以详细解释 postgresql 服务如何在 Ubuntu [16.04] 上运行吗?导致我问的行为如下。我使用命令 sudo systemctl start postgresql 来启动我的 postgresql 服务。当我 运行 systemctl list-units | grep post 我看到

UNIT                           LOAD   ACTIVE SUB       DESCRIPTION
postgresql.service             loaded active exited    PostgreSQL RDBMS
postgresql@9.6-main.service    loaded active running   PostgreSQL Cluster 9.6-main
system-postgresql.slice        loaded active active    system-postgresql.slice

当我 运行 sudo systemctl stop postgresql postgresql.service postgresql@9.6-main.service 都消失了。这三个服务各自在做什么?

我假设 postgresql@9.6-main.servicePostgreSQL Cluster 9.6-main 集群的注册服务。这是在您的系统上实际控制 postgres 的那个。

我假设 postgresql.service is the effect desribed here

我假设 system-postgresql.slice is a postgres slice unit

以上

none 对 运行 postgres 至关重要。您只需 pg_ctl 即可 start/stop 集群,而无需将其注册到您的服务中。但是,如果您想知道在您的情况下是哪个服务运行它 - 那么它是 postgresql@9.6-main.service