PostgreSQL 服务 initdb 不起作用

c0d*_*0da 8 postgresql database

我以类似于此处提到的方法在我的 Fedora 16 上安装了 PostgreSQL 9.1.2 ,并对其进行了测试,这意味着我的安装工作正常。

但是当我这样做时:service postgresql initdb甚至service postgresql-9.0 initdb我得到错误:

Redirecting to /bin/systemctl  initdb postgresql.service
Unknown operation initdb
Run Code Online (Sandbox Code Playgroud)

因此,我也无法启动 pgAdmin3。

我错过了什么?

Tom*_*omH 7

在 postgres 已转换为使用本机systemd单元的系统上,您需要将其postgresql-setup用于initdb. 所以你想要的是:

postgresql-setup initdb
Run Code Online (Sandbox Code Playgroud)

  • [这里](http://docs.fedoraproject.org/en-US/Fedora/16/html/Release_Notes/sect-Release_Notes-Changes_for_Sysadmin.html) 是解释原因的页面。 (3认同)

Kha*_*led 2

您需要使用以下命令启动 postgresql 服务:

service postgresql start
Run Code Online (Sandbox Code Playgroud)

initdb仅当您需要初始化数据库服务器的数据目录时才应使用该工具,并且当您使用yumCentos 或apt-getubuntu 上的包管理器安装 postgresql 服务器时,这应该已自动完成。

您可以按照您提供的链接中的指示使用它:

initdb -D /usr/local/pgsql/data
Run Code Online (Sandbox Code Playgroud)