升级的MongoDB和现在的shell死于“非法指令”

时间:2013-01-04 00:41:20

标签: mongodb

我正在运行MongoDB v2.0.4。 我安装了v2.2.2并重新启动。

mongod进程正常运行。客户端应用程序正在连接并正常运行 但是mongo shell轰炸了。

$: ~ mongo localhost/da
MongoDB shell version: 2.2.2
connecting to: localhost/da
Illegal instruction
$: ~

我的“安装”过程是下载&解压缩.tgz并将bin中的所有二进制文件链接到/ usr / local / bin。

这是我在登录开始时看到的内容。

Thu Jan  3 16:14:54 Mongo DB : starting : pid = 7225 port = 27017 dbpath = /var/lib/mongodb/ master = 0 slave = 0  32-bit 

** NOTE: when using MongoDB 32 bit, you are limited to about 2 gigabytes of data
**       see http://blog.mongodb.org/post/137788967/32-bit-limitations for more

Thu Jan  3 16:14:54 db version v1.2.2, pdfile version 4.5
Thu Jan  3 16:14:54 git version: nogitversion
Thu Jan  3 16:14:54 sys info: Linux vernadsky 2.6.24-27-server #1 SMP Fri Mar 12 01:45:06 UTC 2010 i686 BOOST_LIB_VERSION=1_40
Thu Jan  3 16:14:54 waiting for connections on port 27017

这是在配备4GB内存和双核PIII 1.4GHz处理器的32位机器上运行。

认为这可能是MongoDB下载页面上提到的“浮点异常”,我尝试了遗留静态构建。结果是一样的。

更新

我认为在较旧的32位系统上运行的局限性使得运行v2.2.2太不稳定了。在执行修复操作或在启动时检查日志文件时,很容易超出2GB限制(由“获得信号:4”错误证明)。

我决定使用Ubuntu包管理器恢复到v1.2.2。

参考文献:

https://jira.mongodb.org/browse/SERVER-5639

https://groups.google.com/d/topic/mongodb-user/gaAlONRvVSU/discussion

1 个答案:

答案 0 :(得分:0)

我在Debian Squeeze 6.0.10上遇到了同样的问题,这是一台旧的32位/ i386机器,还有官方mongodb指令的10gen发行版。关于安装的一些问题 - 配置mongo-org-server和依赖项试图执行mongod“非法指令”和

我不得不通过简单的apt-get install mongodb清除软件包并安装1.4.4版本。