我尝试使用mongo文档安装mongo:在Ubuntu上安装MongoDB,在安装过程中未提及任何错误。但是,当我运行mongo
命令时,终端中显示以下错误。
全局初始化失败:BadValue无效或未设置用户区域设置。请确保正确设置LANG和/或LC_ *环境变量
我尝试使用mongo文档安装mongo:在Ubuntu上安装MongoDB,在安装过程中未提及任何错误。但是,当我运行mongo
命令时,终端中显示以下错误。
全局初始化失败:BadValue无效或未设置用户区域设置。请确保正确设置LANG和/或LC_ *环境变量
Answers:
看起来您的locale
设置在该VM上或至少在该VM上的该会话上损坏或不存在。如果未正确设置区域设置,则MongoDB的依赖项之一(boost)将失败(请参阅SERVER-9032)。供参考,在SERVER-9032中进行更改之前,此问题仍然发生,但看起来像这样。
有时注销并重新登录可以解决该问题(仅在当前会话中无效),或者您可以尝试运行sudo locale-gen
以确保生成成功。
同时,作为一种运行mongo
(或其他mongod
方式)的解决方法,只需LC_ALL
在启动程序之前手动设置变量即可:
export LC_ALL=C
mongo
我还尝试在Ubuntu 12.04上安装MongoDB,并在虚拟机(XEN)上遇到相同的错误。对我来说,修改/etc/default/locale
就可以了。我使用以下设置进行工作:
LANG=en_US.UTF-8
LANGUAGE=en_US
LC_ALL=en_US.UTF-8
或者,另一个有效的配置将是(注意引号和:en):
LANG="en_US.UTF-8"
LANGUAGE="en_US:en"
LC_ALL="en_US.UTF-8"
Adam C的解决方法export
也有所帮助,并且可能是更详尽的答案。
基于此https://askubuntu.com/a/227513/59618,您可以:
$ sudo locale-gen "en_US.UTF-8"
Generating locales...
en_US.UTF-8... done
Generation complete.
$ sudo dpkg-reconfigure locales
Generating locales...
en_US.UTF-8... up-to-date
Generation complete.