mongo
コマンドだけでmongodb Shellを実行しようとすると、次のようになります。
Error: couldn't connect to server 127.0.0.1 Shell/mongo.js:84
例外:接続に失敗しました
ただし、localhostのLAN IPアドレスを次のように指定すると、
mongo 10.10.5.90
...それはうまく接続します。
手がかりはありますか?
ありますか bind_ip
mongodb.conf(または起動スクリプト)に設定しますか? 明確にするために編集A bind_ip
設定は、リッスンするIPをそのIPのみに制限します。
IPアドレスのバインドのセクションを参照してください: http://www.mongodb.org/display/DOCS/Security+and+Authentication
そうでない場合は、localhostアクセスをブロックするファイアウォールルールがありますか?これは奇妙なことですが、LAN IPが機能しているのに機能しない別の理由は考えられません。
このエラーは、mongodbが適切にシャットダウンされなかった場合にも発生する可能性があります。 Sudo start mongodb
と入力し、実行ごとに新しいプロセスIDが表示される場合は、mongodbが正しくシャットダウンされていません。このタイプを解決するには
Sudo rm /var/lib/mongodb/mongod.lock
Sudo -u mongodb mongod -f /etc/mongodb.conf --repair
Sudo start mongodb
この問題を解決するには、次のすべての手順に従ってください
Step 1: Remove lock file.
Sudo rm /var/lib/mongodb/mongod.lock
Step 2: Repair mongodb.
mongod --repair
Step 3: start mongodb.
Sudo start mongodb
or
Sudo service mongodb start
Step 4: Check status of mongodb.
Sudo status mongodb
or
Sudo service mongodb status
Step 5: Start mongo console.
mongo
次のようにmongod.confを編集します
bindIp:0.0.0.0、localhost
わたしにはできる。
Mongoの起動時にbind_ipにあったipと一緒にlocalhostを追加し、それが私の問題を解決しました。例:bin/mongod --dbpath data --logpath mongo.log --fork --bind_ip localhost、10.100.1.2