在Ubuntu 14.04上,如果我有PGDATA环境variables设置,这两个命令
service postgresql start
和
pg_ctl start
似乎做同样的事情:在后台启动postgres服务器。 没有设置PGDATA,“pg_ctl start”需要额外的-D / datadir参数才能启动。 该服务不需要这个。 这是为什么? 启动服务器的两种方式有什么区别? 如何在不知道数据目录的情况下启动服务?
service
命令运行一个System V风格的初始化脚本。 在这种情况下,您正在/etc/init.d
目录下运行一个名为postgreql
的脚本。 这个脚本可能是专门为Ubuntu编写的,并且有适当的配置信息。