我正在尝试开始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-centos-or-fedora-linux/