Ubuntu 12.04 中使用的 Postgres

Ubuntu 12.04 中使用的 Postgres

我正在尝试使用 postgres(全新安装)在 ubuntu 12.04 版本上运行 django。要使其运行,以前您必须编辑文件/etc/postgresql/9.1/main/pg_hba.conf。但是,当我查看此版本时,没有/etc/postgresql目录,并且该目录下/etc/postgresql-common似乎没有类似的文件。pg_hba.conf

此外,当我听到你这么说的时候,我想做的改变是:

# change 
local   all         all                               ident
# to
local   all         all                               trust

这是正确的吗?我认为我看到它应该改为 peer(而不是 trust),如果正确,为什么?

更新: 这是 postgres 的版本

psql (PostgreSQL) 9.1.3

答案1

事实证明,postgres 在 AWS 版本的 ubuntu 12.04 上安装时出现错误,我收到了大量此类警告

locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory

当 postgres 尝试安装

Error: The locale requested by the environment is invalid.
Error: could not create default cluster. Please create it manually with

    pg_createcluster 9.1 main --start

or a similar command (see 'man pg_createcluster').

所以我找到了这个链接,Perl 警告在 Debian 中设置区域设置失败,建议设置适当的环境变量。设置后,运行 pg_createcluster 命令,postgres 服务器即可启动并运行。

答案2

从描述来看服务器包,未安装。

你应该运行:

sudo apt-get install postgresql-9.1

答案3

尝试完全删除 postgresql

sudo apt-get purge postgresql postgresql-*

检查您是否安装了语言环境文件,这有时会在 Ubuntu 服务器上出现错误

sudo apt-get install language-pack-en-base

(替换en为您的语言代码)

现在再次安装 postgresql 并检查输出中没有任何错误

sudo apt-get install postgresql-9.1

答案4

如果你正在运行 postgres,你可以找到它的基本目录,如下所示:

$ ps aux | grep postmaster
postgres  1167  0.0  0.0  53764   536 ?        S    Mar29   0:33 /opt/postgres/bin/postmaster -D /data/db/postgres

(在我的例子中,postgres 的基本目录是 /data/db/postgres YMMV)

相关内容