mongod 启动失败,错误:mongod:符号查找错误:mongod:未定义符号:_ZN7pcrecpp2RE4InitEPKcPKNS_10RE_OptionsE

mongod 启动失败,错误:mongod:符号查找错误:mongod:未定义符号:_ZN7pcrecpp2RE4InitEPKcPKNS_10RE_OptionsE

我正在尝试开始mongod,但我得到了

$ mongod
mongod --help for help and startup options
mongod: symbol lookup error: mongod: undefined symbol: _ZN7pcrecpp2RE4InitEPKcPKNS_10RE_OptionsE

在谷歌上搜索它似乎与有关libpcre;我试图安装libpcre3和的最新版本,libpcre++但它不起作用。

MongoDB shell 的版本(和mongodb-server的版本)是 2.0.4。Ubuntu 的版本是 12.04。libpcre3的版本是 8.12-4。libpcre++0的版本是 0.9.5-5.1。

谢谢

答案1

我们也遇到了同样的问题,但不确定是什么原因造成的。

我们尝试通过 重新安装apt-get,但经过清除等操作后,无济于事。

我们从 MongoDB 网站下载了 64 位预编译版本,并尝试mongod从该包运行,它启动正常。您可能希望继续使用 2.0.4 版本 - 我们使用了文件。

我们将文件移至bin//usr/bin然后 mongod 就可以再次正确启动了。

这不是一个好的解决办法,但是它确实有效。

答案2

我最近在 Amazon Linux 上遇到了同样的问题,解决方案似乎与我遇到的一样。问题是我使用的是默认操作系统存储库(其中包含过时的 Mongo 软件包版本),而不是使用 10gen 自己的存储库。10gen 版本的软件包没有受到此错误的影响。

删除 MongoDB 的 Ubuntu repo 版本后,您可以按照以下方法安装最新的软件包。

导入10gen的gpg密钥:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv 7F0CEB10

创建 /etc/apt/sources.list.d/10gen.list 文件并为 10gen 存储库包含以下行。

echo 'deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' | sudo tee /etc/apt/sources.list.d/10gen.list

运行sudo apt-get update然后sudo apt-get install mongodb-10gen

说明取自此页面:http://docs.mongodb.org/manual/tutorial/install-mongodb-on-ubuntu/

任何在 RHEL 系列产品上遇到此问题的人都可以在这里找到说明:http://docs.mongodb.org/manual/tutorial/install-mongodb-on-red-hat-c​​entos-or-fedora-linux/

相关内容