1

我正在使用 4.14.10-2-MANJARO。我试图安装 Postgres 数据库。我已经使用命令安装了 postgresql 10.1-1:

yaourt -S postgresql

接着:

sudo -u postgres -i

initdb --locale $LANG -E UTF8 -D '/var/lib/postgres/data'

createuser --interactive

然后我得到了这样的东西:

createuser: could not connect to database postgres: could not connect to server: No such file or directory
        Is the server running locally and accepting
        connections on Unix domain socket "/run/postgresql/.s.PGSQL.5432"?

我不知道如何解决它。我一直在使用这个网站:

https://wiki.archlinux.org/index.php/PostgreSQL#Installing_PostgreSQL

然后我想通过命令创建一个新数据库:

createdb myDatabaseName

谢谢你。

4

2 回答 2

1

我遇到了同样的问题,我也在运行4.19.1-1-MANJAROand postgresql 10.5-3,但大多数答案都是针对 Ubuntu 的,并且指的是 Manjaro 上不存在的目录。

您必须运行 systemctl 来检查服务以查看问题所在

sudo systemctl status postgresql

它给出了这样的东西

systemd[1]: Starting PostgreSQL database server...
postgres[3902]: "/var/lib/postgres/data" is missing >
postgres[3902]:   su - postgres -c "initdb --locale >

它告诉你运行su上面列出的命令。但这需要用户的密码postgres。为了解决这个问题,我们sudo改为使用命令。

sudo su - postgres -c "initdb --locale en_US.UTF-8 -D /var/lib/postgres/data'"

此命令完成后,它会告诉您运行pg_ctl -D /var/lib/postgres/data start,但只需通过 systemctl 启动它。

sudo systemctl enable postgresql
sudo systemctl start postgresql
于 2018-11-16T19:33:56.267 回答
0

使用 创建数据目录后initdb,您需要使用 启动数据库服务器进程

pg_ctl -D /var/lib/postgres/data start

但在此之前,您应该编辑/var/lib/postgres/data.postgresql.conf和设置参数,如listen_addressesport以及shared_buffers与日志记录相关的所有内容。

这样,您可以在启动服务器后查阅日志文件以查看是否一切顺利。

于 2018-01-29T09:15:55.587 回答