web-dev-qa-db-ja.com

MongoDB errno 111への接続が拒否されました

Ubuntu 12.04 LTSとMongoDBインスタンスを実行しているLinodeサーバーがあります(サービスが実行されており、ローカルに接続できます)。外部ソースからは接続できません。

IPテーブルに次の2つのルールを追加しました。<ip address>は、FROMに接続するサーバーです(この MongoDBリファレンス で説明されているとおり)。

iptables -A INPUT -s < ip-address > -p tcp --destination-port 27017 -m state --state NEW,ESTABLISHED -j ACCEPT

iptables -A OUTPUT -d < ip-address > -p tcp --source-port 27017 -m state --state ESTABLISHED -j ACCEPT

そして、IPテーブルにルールがあり、27017で<ip address>との接続が許可されていますが、次のようなコマンドを使用して、<ip address>からmongoデータベースに接続しようとすると:

mongo databasedomain/databasename -u username -p password

私はこのエラーを受け取ります:

2014-07-22T23:54:03.093+0000 warning: Failed to connect to databaseserverip:27017, reason: errno:111 Connection refused 2014-07-22T23:54:03.094+0000 Error: couldn't connect to server < ip address >:27017 (databaseserverip), connection attempt failed at src/mongo/Shell/mongo.js:148 exception: connect failed

すべてのヘルプは非常に高く評価されています!!!!ありがとう!!!

68
dbcooper

みなさん、助けてくれてありがとう!

それはiptableの競合であることが判明しました。開いているポートをリストする2つのルール(閉じられたポートになりました)。

ただし、akaによるコメントの1つとmanu2013によるコメントの1つは、競合がなければ、私が遭遇した問題でした。

そう!外部接続を行うには、/etc/mongod.confファイルを編集してbind_ip = 0.0.0.0を設定することを常に忘れないでください。

また、mongoが必要とするポートの競合するルールがiptableにないことを確認してください(iptablesを適切にセットアップするには、 mongodbのサイトのリンク を参照してください)。

110
dbcooper

以下を試してください:

Sudo rm /var/lib/mongodb/mongod.lock
Sudo service mongodb restart
41
manu2013

これらのコマンドにより問題が修正され、

Sudo rm /var/lib/mongodb/mongod.lock
Sudo mongod --repair
Sudo service mongod start
Sudo service mongod status

プロキシの背後にいる場合は、次を使用します-
export http_proxy = "http:// username:[email protected]:port /"
export https_proxy = "http:// username:[email protected]:port /"

リファレンス: https://stackoverflow.com/a/24410282/4359237

39
sk1pro99

Ubuntu Server 15.04および16.04の場合、このコマンドのみを実行する必要があります

Sudo apt-get install --reinstall mongodb
16
techfano

/data/dbディレクトリがありませんでした。私はそれを作成し、chmod 777許可を与えました、それは私のために働いた

もう1つのオプションは、データベースを次のように修復することです(注:最初にdb0ディレクトリを事前に作成する必要があります)。

mongod --dbpath /var/lib/mongodb/ --repairpath /var/lib/mongodb/db0

これは実稼働環境でも受け入れられるオプションです...

3
Ostati

私も同じ問題を抱えていました。dbpathにディレクトリを作成します。私の場合、/ data/dbにディレクトリはありませんでした。そのため、ディレクトリを作成しました。

2
Susampath

私の場合、以前のバージョンは3.2でした。 3.6にアップグレードしましたが、データファイルは新しいバージョンと互換性がありませんでした。そのため、自分とその作品で使用できなかったため、すべてのデータファイルを削除しました。

/var/log/mongodbを使用してログを確認できます

1
Kamal Kumar

このチュートリアルのインストール手順に従います

buntu 16.04にMongoDBをインストールする方法

同じ間違いがありました。最後に、ポート番号を設定する必要があることがわかりました

Mongoコマンドのデフォルトのポート番号は27017です

ただし、mongo.confのデフォルトのポート番号は29999です

1
user9805244