mongodb errno:61に接続できません接続が拒否されました


91

私は最近、Mongodb-2.6.0をHomebrewとともにインストールしました。インストールが成功した後、mongoコマンドを使用して接続を試みました。接続できない次のエラーが表示されます。

Failed to connect to 127.0.0.1:27017, reason: errno:61 Connection refused

Error: couldn't connect to server 127.0.0.1:27017 (127.0.0.1), connection attempt failed at src/mongo/shell/mongo.js:146

exception: connect failed

1
mongodサービスも実行されていますか?confファイルにはどのような構成オプションがありますか?
ffflabs 2014年

インストールにsudo apt-getを使用しましたか?私はこれで問題が発生している人々について読んだ... 代わりにMongoDBサイトから削除してダウンロードしてみてください。
Hassan

自作でインストールしましたが、公式ウェブサイトの指示には、.configファイルを設定する必要があると記載されていませんでした。私はそれをダウンロードして、「mongoose」コマンドを実行しただけで、上記のエラーが発生しました。
マイケル

ログを確認してください/var/logs/mongodb。覚えている場合は、
AlbertEngelB 2014年

ダウンロードして再インストールし、ファイルを解凍しました。「mongo」を実行していますが、同じエラーが発生します。
マイケル、

回答:


277

mongodbサービスがMacで実行されていない場合に発生する可能性があります。それを始めるために、私は試しました

brew services start mongodb

そしてそれは働いた。

編集:homebrewに関するこのPRに関する議論によると:https : //github.com/Homebrew/homebrew/issues/30628

brew servicesは非推奨です。私はSOを見回して、これらの回答が質問に答えていることを発見しました:Linux / OS Xでmongodサービスを開始する正しい方法は何ですか?


8
「Unknown command:services」というコマンドでエラーが発生します
ZeMoon

7
「brew services」はサポートされなくなりました:github.com/Homebrew/homebrew/issues/32006
Vitaly

7
mongoの代わりにsudo mongodを試してみました。モンゴシェルにアクセスするために、私は新しいシェルウィンドウを開いてモンゴを書いて、それはうまくいった!このブログ
Ali Raza Bhayani 2015

1
抽出サービスは、私のMac OS X Yosemiteではサポートされなくなりました。sudo mongodmongodbを開始し、mongoコマンドが機能しました。@Ali Raza Bhayaniに感謝します。
psun

2
この解決策をありがとう!! brew serviceコマンドは、Mac OS X Sierraで動作しました。
Jcc.Sanabria 2017年

32

まったく同じ問題が発生しました。このエラーを回避するための明確なステップバイステッププロセスを次に示します。

ステップ1-インストール(MongoDBをすでにインストールしている場合は、このステップを実行しないでください):

brew update
brew install mongodb

ステップ2 -Mongo Daemonを実行します。

mkdir -p /data/db
sudo mongod

ステップ3 -Mongo Shellインターフェースを実行します。

mongo

このシーケンスでは、mongoエラーなしでコマンドを実行できました。エラートレースとその解決策についても、このブログで詳しく説明しています。


1
これは、MongoDBの公式ページで参照されている:docs.mongodb.org/v2.2/tutorial/install-mongodb-on-os-x/...
パウロ・オリベイラが

これは私のために一度はうまくいった...しかしそれからそれは落ちた:/これはトリックをしたようだ:stackoverflow.com/a/22623543/1177832
danwild

これは戦いに勝利し、戦争に負けるための良い方法です。rootとしてサービスを実行しないでください。
マイルズエリクソン2018年

22

問題を解決するには、「brew install mongodb」を使用した後、brewから提供される指示に従う必要があります。

起動するには、ログイン時にmongodbを起動します。

ln -sfv /usr/local/opt/mongodb/*.plist ~/Library/LaunchAgents

次に、mongodbをロードするには:

launchctl load ~/Library/LaunchAgents/homebrew.mxcl.mongodb.plist

または、launchctlが必要ない場合は、次のコマンドを実行します。

mongod --config /usr/local/etc/mongod.conf

あなたはその最後のコマンドを実行することができるかもしれませんが、それは私にとってはうまくいきませんでした、そして私は2番目のコマンドを実行する必要がありました。将来私を救うために。私も最初のコマンドを実行しただけです。お役に立てば幸いです。

EDIT Hrishiの使用方法はbrew services mongodb start私にとってはうまくいきました。mongoのドキュメントにこれを含めるべきだと思います。


最後のコマンドを使用して、ブラウザーでlocalhost / 27017にアクセスしました。画面には、「ネイティブドライバーポートでHTTP経由でMongoDBにアクセスしようとしているようです。」それは正しくないようです...
Michael

モンゴは今でも動いていますね?あなたのように入力することができませんモンゴをシェルに、あなたは、もはや接続がメッセージを拒否してきていますか?ブラウザからmongoにアクセスすることはありません。cliからそれを操作する必要があります。
jh3y 2014年

いいえ、「mongod --config /usr/local/etc/mongod.conf」と入力した後、シェルのコマンドは実行されません。これは、単純な空白のプロンプトです。Homebrewを使用せずに再インストールしてWebサイトからzipをダウンロードし、実行可能ファイルを/ usr / local / binに移動しましたが、今でも同じエラーメッセージが表示されます。
マイケル、

はい、最後のコマンドも私のためにハングアップしました。最初の2つを実行するだけで十分です。ぶら下がったら叩いctrl + cてみてくださいmongo
jh3y 2014年

うーん...それはまだ機能していません。mongoDBフォーラムに投稿します。助けていただきありがとうございます。
マイケル

16

別のタブで、mongoシェルを

モンゴッド

次に、前のタブに戻って再試行します。あなたはmongoshellアップトラブルの設定がある場合は、モンゴシェル上で、このリンクをチェックアウト:http://docs.mongodb.org/manual/tutorial/manage-mongodb-processes/ またはこのリンクMongoDBのインストールについて: HTTPを:/ /docs.mongodb.org/manual/tutorial/install-mongodb-on-os-x/


これでうまくいきました。mongoを実行する前に、mongodサービスの開始を完全に見過ごしていました。ありがとう!
Matt Welander 2014年

7

mongodコマンドラインから呼び出すときにも同じ問題が発生していました。

代わりにを呼び出してこれを解決しましたsudo mongod


rootとしてサービスを実行しないでください。
マイルズエリクソン2018年

4

私は同じエラーがありましたが、根本的な原因が異なりました。他の誰かが問題に遭遇した場合に備えて、私はここに解決策を投稿すると思いました。実行中にMacが不適切にシャットダウンした後、このエラーが発生しましたmongorestore -d foo dump/foo/

TL; DR:私は破損し除去することによって、問題を修正しましたfoo.nsと一緒にファイルをfoo.0foo.1...私のデータフォルダから/usr/local/var/mongodb/。その後、mongoサーバーを再起動するとbrew services restart mongodb、通常に戻りました。

詳細:brewまたはlaunchctlを使用してmongodbサービスを開始または再起動しようとしても、エラーが発生し続けました。最終的に実行 mongod --dbpath /usr/local/var/mongodb して、サービスが実際に開始されていないことを確認しました。開始シーケンスには、次のエラーが含まれていました。 [initandlisten] bad .ns file: /usr/local/var/mongodb/foo.ns [initandlisten] User Assertion: 10079:bad .ns file length, cannot open database 不良.nsファイルと残りのデータファイルを取り除き、次回サービスを開始したときに、問題ありませんでした。


1
私の唯一の後悔は、与える投票が1つしかないことです。他のすべての回答は、デフォルトのbrew構成がdbsを/ usr / local / var / mongodbに置くという事実を無視しています!
premiumFrye

1
Annnddd Mongoが再びクラッシュしたので、このプロセスを再度実行する必要がありました。良いことを私はあなたの答えを支持したので、それを再び見つけることができました:D
premiumFrye

3

私にとってosxでは、実行中の古いインスタンスを強制終了する必要があり、その後、再起動が機能しました。

$>ps -aef | grep mongo
502  8047     1   0 11:52AM ??         0:00.23 /usr/local/opt/mongodb/bin/mongod --config /usr/local/etc/mongod.conf 

$>sudo kill 8047

$>sudo mongod


1

自作でmongo 3.6にアップグレードした後、このエラーが発生しました。

ログ/usr/local/var/log/mongodb/mongo.logにはメッセージが含まれていましたshutting down with code:62。このエラーコードは、既存のデータベースが古すぎて、現在のバージョンのmongoで実行できないことを意味します。

私は別のSO質問で2つの解決策を見つけました :

アップグレードを選択しました。私の場合、3.4にダウングレードし、mongoコンソールでコマンドを実行してから、もう一度アップグレードする必要がありました。Mongoでは、一度に1つのメジャーバージョンをアップグレードする必要があるため、どれだけ前のバージョンかによっては、追加の手順が必要になる場合があります。ドキュメントが案内します。

brew switch*brew services restartコマンドは、比較的簡単バージョン間スワップました。


0

MongoDBをすでにインストールしている場合は、最初にsudoユーザーとしてmongodを実行してみてください。mongodをスーパーユーザーとして実行していないため、問題に直面していました。

両方のコマンド(mongodsudo mongod)のo / pを一番下に貼り付けました。これも確認できますが、

まずこれを試してください

sudo mongod

これではない

mongod

次のコマンドを順番に実行して、Mac OS X Sierra 10.12.6にMongoDBをインストールしました。

brew update
brew install mongodb --devel
brew services start mongodb

次に、mongodプロセスがデータを書き込むディレクトリを作成しました。これは、mongodプロセスがデフォルトで取得するオプションであるため、https://docs.mongodb.com/manual/tutorial/install-mongodb-on-osにあるこの便利なガイドを参照してください。 -バツ/

sudo mkdir -p /data/db

最後にmongodプロセスを次のように開始しました

sudo mongod

私の端末でのmongod(失敗)およびsudo mongod(成功)コマンドの出力。

MacBook-Pro-2:appscheck admin$ mongod
2017-12-10T08:12:06.166+0530 I CONTROL  [initandlisten] MongoDB starting : pid=2698 port=27017 dbpath=/data/db 64-bit host=MacBook-Pro-2.local
2017-12-10T08:12:06.166+0530 I CONTROL  [initandlisten] db version v3.4.10
2017-12-10T08:12:06.166+0530 I CONTROL  [initandlisten] git version: 078f28920cb24de0dd479b5ea6c66c644f6326e9
2017-12-10T08:12:06.166+0530 I CONTROL  [initandlisten] OpenSSL version: OpenSSL 1.0.2n  7 Dec 2017
2017-12-10T08:12:06.166+0530 I CONTROL  [initandlisten] allocator: system
2017-12-10T08:12:06.166+0530 I CONTROL  [initandlisten] modules: none
2017-12-10T08:12:06.166+0530 I CONTROL  [initandlisten] build environment:
2017-12-10T08:12:06.166+0530 I CONTROL  [initandlisten]     distarch: x86_64
2017-12-10T08:12:06.166+0530 I CONTROL  [initandlisten]     target_arch: x86_64
2017-12-10T08:12:06.166+0530 I CONTROL  [initandlisten] options: {}
2017-12-10T08:12:06.166+0530 I STORAGE  [initandlisten] exception in initAndListen: 20 Attempted to create a lock file on a read-only directory: /data/db, terminating
2017-12-10T08:12:06.166+0530 I NETWORK  [initandlisten] shutdown: going to close listening sockets...
2017-12-10T08:12:06.166+0530 I NETWORK  [initandlisten] shutdown: going to flush diaglog...
2017-12-10T08:12:06.167+0530 I CONTROL  [initandlisten] now exiting
2017-12-10T08:12:06.167+0530 I CONTROL  [initandlisten] shutting down with code:100


MacBook-Pro-2:appscheck admin$ sudo mongod
Password:
2017-12-10T08:12:14.084+0530 I CONTROL  [initandlisten] MongoDB starting : pid=2700 port=27017 dbpath=/data/db 64-bit host=MacBook-Pro-2.local
2017-12-10T08:12:14.084+0530 I CONTROL  [initandlisten] db version v3.4.10
2017-12-10T08:12:14.084+0530 I CONTROL  [initandlisten] git version: 078f28920cb24de0dd479b5ea6c66c644f6326e9
2017-12-10T08:12:14.084+0530 I CONTROL  [initandlisten] OpenSSL version: OpenSSL 1.0.2n  7 Dec 2017
2017-12-10T08:12:14.084+0530 I CONTROL  [initandlisten] allocator: system
2017-12-10T08:12:14.084+0530 I CONTROL  [initandlisten] modules: none
2017-12-10T08:12:14.084+0530 I CONTROL  [initandlisten] build environment:
2017-12-10T08:12:14.084+0530 I CONTROL  [initandlisten]     distarch: x86_64
2017-12-10T08:12:14.084+0530 I CONTROL  [initandlisten]     target_arch: x86_64
2017-12-10T08:12:14.084+0530 I CONTROL  [initandlisten] options: {}
2017-12-10T08:12:14.084+0530 I STORAGE  [initandlisten] wiredtiger_open config: create,cache_size=7680M,session_max=20000,eviction=(threads_min=4,threads_max=4),config_base=false,statistics=(fast),log=(enabled=true,archive=true,path=journal,compressor=snappy),file_manager=(close_idle_time=100000),checkpoint=(wait=60,log_size=2GB),statistics_log=(wait=0),
2017-12-10T08:12:14.472+0530 I CONTROL  [initandlisten] 
2017-12-10T08:12:14.472+0530 I CONTROL  [initandlisten] ** WARNING: Access control is not enabled for the database.
2017-12-10T08:12:14.472+0530 I CONTROL  [initandlisten] **          Read and write access to data and configuration is unrestricted.
2017-12-10T08:12:14.472+0530 I CONTROL  [initandlisten] ** WARNING: You are running this process as the root user, which is not recommended.
2017-12-10T08:12:14.472+0530 I CONTROL  [initandlisten] 
2017-12-10T08:12:14.472+0530 I CONTROL  [initandlisten] 
2017-12-10T08:12:14.472+0530 I CONTROL  [initandlisten] ** WARNING: soft rlimits too low. Number of files is 256, should be at least 1000
2017-12-10T08:12:14.560+0530 I FTDC     [initandlisten] Initializing full-time diagnostic data capture with directory '/data/db/diagnostic.data'
2017-12-10T08:12:14.707+0530 I INDEX    [initandlisten] build index on: admin.system.version properties: { v: 2, key: { version: 1 }, name: "incompatible_with_version_32", ns: "admin.system.version" }
2017-12-10T08:12:14.707+0530 I INDEX    [initandlisten]      building index using bulk method; build may temporarily use up to 500 megabytes of RAM
2017-12-10T08:12:14.719+0530 I INDEX    [initandlisten] build index done.  scanned 0 total records. 0 secs
2017-12-10T08:12:14.720+0530 I COMMAND  [initandlisten] setting featureCompatibilityVersion to 3.4
2017-12-10T08:12:14.720+0530 I NETWORK  [thread1] waiting for connections on port 27017

次に、新しいターミナルを開いてMongoDBへのクエリを開始しました。

MacBook-Pro-2:appscheck admin$ mongo
MongoDB shell version v3.4.10
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 3.4.10
Welcome to the MongoDB shell.
For interactive help, type "help".
For more comprehensive documentation, see
    http://docs.mongodb.org/
Questions? Try the support group
    http://groups.google.com/group/mongodb-user
Server has startup warnings: 
2017-12-10T08:12:14.472+0530 I CONTROL  [initandlisten] 
2017-12-10T08:12:14.472+0530 I CONTROL  [initandlisten] ** WARNING: Access control is not enabled for the database.
2017-12-10T08:12:14.472+0530 I CONTROL  [initandlisten] **          Read and write access to data and configuration is unrestricted.
2017-12-10T08:12:14.472+0530 I CONTROL  [initandlisten] ** WARNING: You are running this process as the root user, which is not recommended.
2017-12-10T08:12:14.472+0530 I CONTROL  [initandlisten] 
2017-12-10T08:12:14.472+0530 I CONTROL  [initandlisten] 
2017-12-10T08:12:14.472+0530 I CONTROL  [initandlisten] ** WARNING: soft rlimits too low. Number of files is 256, should be at least 1000
> show dbs;
admin  0.000GB
local  0.000GB
> use practice
switched to db practice
>

それでおしまい。


0

私は同じ問題を抱えていて、ログファイルを見るとこれを見ました:

{2019-03-09T11:57:32.136-0500 I STORAGE  [initandlisten] 
exception in initAndListen: NonExistentPath: 
Data directory /usr/local/var/mongodb not found., terminating}

そのため/usr/local/var/mongodb 、brew services restart mongodbコマンドを発行したディレクトリを作成し、mongoコンソールを開くことができました。


-1

「mongo」コマンドを使用してテストにアクセスしようとしているときに、実行中のデータベースがないと思います。

最初にこのコマンドをターミナルで実行します:

mongod 

次に、別のターミナルウィンドウを開いて実行します。

モンゴ

すべてが今動作しているはずです。


-1

私の同様のエラーは、mongodを実行しようとしているときに「sudo rm /data/db/mongod.lock」ファイルを削除することで解決されます。これで、mongodを実行してから、mongoを実行できます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.