MongoDB v2.0.4 を実行していました。v2.2.2 をインストールして再起動しました。
mongod プロセスは正常に実行されています。クライアント アプリケーションは正常に接続され、機能しています。しかし、モンゴシェルが爆撃します。
$: ~ mongo localhost/da
MongoDB shell version: 2.2.2
connecting to: localhost/da
Illegal instruction
$: ~
私の「インストール」プロセスは、.tgz をダウンロードして解凍し、bin 内のすべてのバイナリを /usr/local/bin に simlink することでした。
ログオン開始時に表示される内容は次のとおりです。
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 のダウンロード ページに記載されている「浮動小数点例外」である可能性があると考えて、legacy-static ビルドを試しました。結果は同じです。
アップデート
古い 32 ビット システムでの実行の制限により、v2.2.2 の実行が非常に不安定になると思います。起動時に修復操作を実行したり、ジャーナル ファイルをチェックしたりすると、2GB の制限を簡単に超えてしまいます ('Got signal: 4' エラーで証明されます)。
Ubuntu パッケージ マネージャーを使用して v1.2.2 に戻すことにしました。
参考文献:
https://jira.mongodb.org/browse/SERVER-5639
https://groups.google.com/d/topic/mongodb-user/gaAlONRvVSU/discussion