我在我的fedora 16上安装了PostgreSQL 9.1.2,方法类似于前面提到的这里,并对它进行了测试,这意味着我的安装工作正常。
但是,当我这样做:service postgresql initdb,甚至service postgresql-9.0 initdb时,我会得到错误:
Redirecting to /bin/systemctl initdb postgresql.service
Unknown operation initdb正因为如此,我也无法启动pgAdmin3。
我遗漏了什么?
发布于 2012-01-15 10:37:30
在将postgres转换为使用本机systemd单元的系统上,您需要将postgresql-setup用于initdb之类的东西。你想要的是:
postgresql-setup initdb发布于 2012-02-15 17:51:23
运行"su - postgres -c .“命令作为根
我在这里找到了答案:https://bugzilla.redhat.com/show_bug.cgi?id=771496
问题描述:初始安装postgresql服务器rpm后,您将得到一个不可启动的服务,直到您以root su - postgres -c "initdb -D /var/lib/pgsql/data“版本运行以下命令--选定组件的发布号(如果适用):根@oscar# rpm -q postgresql-server postgresql- server -9.1.2-1.fc16.x86_64
有几个地方指示我对Fedora 16使用这个命令,而不是按照前面的指令(新命令: su - postgres -c "PGDATA=/var/lib/pgsql/data initdb“),但在前面看到'su‘时,我想它会在运行命令时将我切换到根。它一直提示我输入密码,但什么都没有用。
我尝试了根passwd、我自己的(好像sudo‘’ing)、" postgres“和"pgsql”,以防我以postgres用户的身份执行此操作,甚至将密码保留为空白。我试着使用su‘’ing根目录,然后运行命令而不使用初始的'su -‘(以"postgres -c .“开头),但这也出错了,告诉我:
“服务器必须在非特权用户ID下启动,以防止系统安全受损。有关如何正确启动服务器的详细信息,请参阅文档。”
最后,我尝试运行完整的命令"su - postgres -c .“作为根,但仍然使用"su",而哇-它起作用了。现在服务开始了。谢谢红帽虫追踪!
su到root,然后输入:
su - postgres -c "PGDATA=/var/lib/pgsql/data initdb“
发布于 2012-01-15 09:26:05
您需要使用以下命令启动postgresql服务:
service postgresql start只有当您需要初始化数据库服务器的数据目录时,才应该使用initdb工具,并且在安装postgresql服务器时,应该自动使用像centos上的yum或ubuntu上的apt-get这样的包管理器。
您可以使用它,如您提供的链接中所示:
initdb -D /usr/local/pgsql/datahttps://serverfault.com/questions/350045
复制相似问题