PostgreSQL 未安装在 Ubuntu 11.04 上

PostgreSQL 未安装在 Ubuntu 11.04 上

在新的 Ubuntu 11.04 服务器上,我尝试通过 安装 PostgreSQL 服务器apt-get install postgresql。但是在安装日志的最后我看到:

Error: could not create default cluster. Please create it manually with

  pg_createcluster 8.4 main --start

当我运行此命令时,我看到了以下消息:

perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = "en_US:en",
LC_ALL = (unset),
LC_CTYPE = "UTF-8",
LANG = "en_US.UTF-8"
are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
Error: The locale requested by the environment is invalid.

并且没有启动 PostgreSQL 服务器 :(

我需要做什么才能对此感到高兴?

答案1

接受的答案对我没有帮助;如果还有其他人和我一样,请阅读下文。

我追踪到问题出在pg_upgradecluster明确取消设置LC_ALL。无论我以何种方式使用其他环境变量,这都会导致 Perl 失败。

所以我所做的就是简单地注释掉第 352 行/usr/bin/pg_upgradecluster

#delete $ENV{'LC_ALL'};

这招奏效了。当然,这只在你是一个普通人,所有集群都使用 en_US.UTF-8 并且不使用任何需要保留的花哨编码时才有效。

答案2

这句话对我有帮助:

echo 'LANGUAGE="en_US.UTF-8"' >> /etc/default/locale
echo 'LC_ALL="en_US.UTF-8"' >> /etc/default/locale

答案3

当前环境变量也有效。使用命令

locale

查看 Postgres 看到的内容,并使用export语句进行更新,例如:

export LANGUAGE="en_US.UTF-8"

答案4

幸运的是,我必须查阅我的笔记来解决这个问题,但你是在 2011 年 9 月问这个问题的。

检查这些链接 - 寻求谷歌翻译的帮助

http://www.thomas-krenn.com/de/wiki/Perl_warning_Setting_locale_failed_unter_Debian

http://www.thomas-krenn.com/de/wiki/Locales_unter_Ubuntu_konfigurieren

https://help.ubuntu.com/community/Locale#List_current_settings

相关内容