私はこのサービスが開始されること、または対話することに問題がなかったところで私はriakとredisから来ています。
これはmongoにとっての一般的な問題であり、どちらかといえばわかりません。再起動しても役に立ちません。私はmongoにとって初めてです。
mongo
MongoDB Shell version: 2.2.1
connecting to: test
Fri Nov 9 16:44:06 Error: couldn't connect to server 127.0.0.1:27017 src/mongo/Shell/mongo.js:91
exception: connect failed
これは私がログで見るものです。
now open)
Fri Nov 9 16:44:34 [conn47] end connection 10.29.16.208:5306 (1 connection now open)
Fri Nov 9 16:45:04 [initandlisten] connection accepted from 10.29.16.208:5307 #48 (2 connections now open)
Fri Nov 9 16:45:04 [conn48] end connection 10.29.16.208:5307 (1 connection now open)
Fri Nov 9 16:45:04 [initandlisten] connection accepted from 10.29.16.208:5308 #49 (2 connections now open)
Fri Nov 9 16:45:04 [conn49] end connection 10.29.16.208:5308 (1 connection now open)
Fri Nov 9 16:45:34 [initandlisten] connection accepted from 10.29.16.208:5316 #50 (2 connections now open)
Fri Nov 9 16:45:34 [conn50] end connection 10.29.16.208:5316 (1 connection now open)
Fri Nov 9 16:45:34 [initandlisten] connection accepted from 10.29.16.208:5317 #51 (2 connections now open)
Fri Nov 9 16:45:34 [conn51] end connection 10.29.16.208:5317 (1 connection now open)
Fri Nov 9 16:46:04 [initandlisten] connection accepted from 10.29.16.208:5320 #52 (2 connections now open)
Fri Nov 9 16:46:04 [conn52] end connection 10.29.16.208:5320 (1 connection now open)
Fri Nov 9 16:46:04 [initandlisten] connection accepted from 10.29.16.208:5321 #53 (2 connections now open)
Fri Nov 9 16:46:04 [conn53] end connection 10.29.16.208:5321 (1 conn
このエラーは、mongoシェルがmongodサーバーと通信できなかった場合に表示されます。
これは、アドレスが間違っていた(ホストまたはIP)か、それが実行されていなかったことが原因である可能性があります。注目すべき1つのことは、提供されるログトレースがあなたのmongo timestamp
の "Fri Nov 9 16:44:06"をカバーしていないことです。
あなたはできる:
通常、これはmongo Shellを起動する前にmongodプロセスを起動しなかったことが原因です。
Mongodサーバーを起動
mongod
別の端末ウィンドウを開く
Mongo Shellを起動する
mongo
解決しました。
この問題は下記の4つのステップによって解決することができます
1).lockファイルを削除します
Sudo rm /var/lib/mongodb/mongod.lock
2)mongodbを修理する
mongod –repair
3)mongodサーバーを起動します
Sudo service mongod start
4)mongoクライアントを起動する
mongo
詳細については http://shakthydoss.com/error-couldnt-connect-to-server-127-0-0-127017-srcmongoshellmongo-js-exception-connect-failed/ をご覧ください。
この方法は、元のファイルを保存せずにデータファイルを修復したい場合にのみ機能します
Dbpathが存在する場所を見つけるには - vim /etc/mongodb.conf
オプションを確認してくださいdbpath =
(私はdbpath =/var/lib/mongodbを持っています)
デフォルト:/ data/db /
一般的な場所には、/ srv/mongodb、/ var/lib/mongodb、または/ opt/mongodbがあります。
/ var/lib/mongodbを自分のdbpathに置き換えます。
Sudo rm /var/lib/mongodb/mongod.lock
Sudo mongod --dbpath /var/lib/mongodb/ --repair
Sudo mongod --dbpath /var/lib/mongodb/ --journal
(あなたがあなたの端末を実行したままにしていることを確認してください、 'Ctrl + c'を押すか、それをやめてください。)mongoを今すぐ別のウィンドウで開始するために入力してください。
これがあなたのために働くことを願っています!元のファイルを維持しながらデータファイルを修復したいmongo recover
MAC OS
状況を確認する
brew services list
何かのようなもの:
Name Status User Plist
mongodb stopped
始めよう
brew services start mongodb
もう一度やってみる
mongo
またはmongo --port 27017
私の場合:
最初に設定ファイルを開きます
Sudo vi /etc/mongodb.conf
IPとPortをこのようにコメントする
#bind_ip = 127.0.0.1
#port = 27017
それからmongodbを再起動します
Sudo service mongodb restart
Sudo service mongod restart
最後に、それは仕事です:D
finn@Finn ~ $ mongo
MongoDB Shell version: 2.4.9
connecting to: test
> exit
あなたのMongoが起動していることを確認してください。私はmongodbを修復することを試みることによってこの問題を解決しました、そこで私はdbを実行するのに必要なディレクトリが作成されなかったことがわかりました。それはこのエラーを示しています
mongod
と入力します。エラーが表示されます。
exception in initAndListen: 29 Data directory /data/db not found., terminating
Dbpath /data/db/
(デフォルト設定)が存在しないためにエラーが発生します。あなたはデータフォルダを作成し、それに対する許可を設定する必要があります。
それから私はコマンドで私のシステムにフォルダを作成します
Sudo mkdir -p/data/db / and Sudo chown id -u
/data/db
それから私は再びモンゴを走らせて、そしてそれはうまくいった。
答えを少し遅くするが、私は同じ問題に遭遇しました
以下は私を助けたステップです。
c:\MongoDB\Server\3.4\bin
"GUIを使って実行する、EX "robomongo"
または
新しい端末を開く(CMD) - >例: "c:\MongoDB\Server\3.4\bin
"で "mongo"コマンドを入力
上記の解決策がすべてうまくいかない場合は、service(start>search>services
)に移動してmongodb serviceを起動します。次に、cmdプロンプトで、binに移動した後に:/>mongo
と入力します。
私はWindowsユーザーで、2018年11月にMongoDBをインストールしましたが、data/dbディレクトリを設定したくありませんでした。しかし、数日後、私が開いたとき、エラーメッセージが出ました:
MongoDB Shell version v4.0.4
connecting to: mongodb://127.0.0.1:27017
2018-12-05T20:42:40.108+0530 E QUERY [js] Error: couldn't connect to server 127.0.0.1:27017, connection attempt failed: SocketException: Error connecting to 127.0.0.1:27017 :: caused by :: No connection could be made because the target machine actively refused it. :
connect@src/mongo/Shell/mongo.js:257:13
@(connect):1:6
exception: connect failed
それから私は上記の答えのすべてを使用して修正しようとしましたが、うまくいきませんでした。私がmongodを走らせようとしたとき、それは言った
MongoDB starting : pid=12220 port=27017 dbpath=C:\data\db\ 64-bit Host=bla
ファイルシステムとcmdを使って(プログラムファイルへの)dbパスを変更しようとしましたが、うまくいきませんでした。
私のために働いた解決策は:
タスクマネージャ(ctrl + shift + esc
) - > サービスタブを開き、MongoDB行がありましたをステータス停止にしました。それから私--- 右クリックして開始をクリックそしてすべてが完璧に動いている:)。
モンゴとつながるには、まず「モンゴッド」サービスを開始する必要があります。あなたが見ることができる以下の出力:
$ mongod
2017-03-05T00:31:39.055+0530 I CONTROL [initandlisten] MongoDB starting : pid=1481 port=27017 dbpath=/data/db 64-bit Host=Prabhu-Nandans-Mac.local
2017-03-05T00:31:39.056+0530 I CONTROL [initandlisten] db version v3.4.2
2017-03-05T00:31:39.056+0530 I CONTROL [initandlisten] git version: 3f76e40c105fc223b3e5aac3e20dcd026b83b38b
2017-03-05T00:31:39.056+0530 I CONTROL [initandlisten] OpenSSL version: OpenSSL 1.0.2k 26 Jan 2017
2017-03-05T00:31:39.056+0530 I CONTROL [initandlisten] allocator: system
2017-03-05T00:31:39.056+0530 I CONTROL [initandlisten] modules: none
2017-03-05T00:31:39.056+0530 I CONTROL [initandlisten] build environment:
2017-03-05T00:31:39.056+0530 I CONTROL [initandlisten] distarch: x86_64
2017-03-05T00:31:39.056+0530 I CONTROL [initandlisten] target_Arch: x86_64
2017-03-05T00:31:39.056+0530 I CONTROL [initandlisten] options: {}
2017-03-05T00:31:39.056+0530 W - [initandlisten] Detected unclean shutdown - /data/db/mongod.lock is not empty.
2017-03-05T00:31:39.057+0530 I - [initandlisten] Detected data files in /data/db created by the 'wiredTiger' storage engine, so setting the active storage engine to 'wiredTiger'.
2017-03-05T00:31:39.057+0530 W STORAGE [initandlisten] Recovering data from the last clean checkpoint.
2017-03-05T00:31:39.057+0530 I STORAGE [initandlisten] wiredtiger_open config: create,cache_size=3584M,session_max=20000,eviction=(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-03-05T00:31:39.620+0530 I CONTROL [initandlisten]
2017-03-05T00:31:39.620+0530 I CONTROL [initandlisten] ** WARNING: Access control is not enabled for the database.
2017-03-05T00:31:39.620+0530 I CONTROL [initandlisten] ** Read and write access to data and configuration is unrestricted.
2017-03-05T00:31:39.620+0530 I CONTROL [initandlisten]
2017-03-05T00:31:39.620+0530 I CONTROL [initandlisten]
2017-03-05T00:31:39.620+0530 I CONTROL [initandlisten] ** WARNING: soft rlimits too low. Number of files is 256, should be at least 1000
2017-03-05T00:31:39.643+0530 I FTDC [initandlisten] Initializing full-time diagnostic data capture with directory '/data/db/diagnostic.data'
2017-03-05T00:31:39.643+0530 I NETWORK [thread1] waiting for connections on port 27017
2017-03-05T00:31:40.008+0530 I FTDC [ftdc] Unclean full-time diagnostic data capture shutdown detected, found interim file, some metrics may have been lost. OK
2017-03-05T00:32:03.832+0530 I NETWORK [thread1] connection accepted from 127.0.0.1:49806 #1 (1 connection now open)
2017-03-05T00:32:03.833+0530 I NETWORK [conn1] received client metadata from 127.0.0.1:49806 conn1: { application: { name: "MongoDB Shell" }, driver: { name: "MongoDB Internal Client", version: "3.4.2" }, os: { type: "Darwin", name: "Mac OS X", architecture: "x86_64", version: "16.4.0" } }
2017-03-05T00:32:08.376+0530 I - [conn1] end connection 127.0.0.1:49806 (1 connection now open)
その後、別の端末を開いて「mongo」と入力してください。
あなたが見ることができる出力は次のとおりです。
$ mongo
MongoDB Shell version v3.4.2
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 3.4.2
あなたの問題は解決しました:)
次のコマンドで試すことができます:
Sudo service mongod start
私も同じ問題を抱えていて、それから私はこれらの2行のコードで修正されました。それが役に立てば幸い
systemctl start mongod
systemctl enable mongod
コンピュータにフォルダC:data/dbがまだ存在しない場合は作成します。 MongoDBを実行するには、このフォルダ構造 'data/db'が必要です。これが誰かに役立つことを願っています。
私による原因はスペースでした - コンソールでこれを実行してください:
df -h
より具体的には:
du -hs /var/lib/mongodb/
彼はディスクの使用状況を確認します。 99%以下の場合は、スペースを一掃してもう一度試してください。
@shakthydossの回答は1回はうまくいきましたが、2回目の発行後に.lockがなかったので、空白のものを作成したところ、うまくいきました。それで、あなたがそこにいないかどうか確認してください。
コマンドラインを使用している場合
cd /var/lib/mongodb
ls
"ls"はmongod.lockが存在しない場合、フォルダ内のすべてのファイルを一覧表示します。
Sudo touch mongod.lock
最後にcommandを実行してください。
mongod –-repair
Sudo service mongod start
Mongoサービスはうまく機能しているはずです。
これは今日私と一緒に起こっていました、そして、私はそれを以下の方法で解決しました。
マシン:Windows 10マシンを使用していて、最新のMongoDB - Community Editionをダウンロードしました。
だから、問題は、私はC:\data\db
を作成していないということでした。
C:\data\db
を作成せずに、CMD端末を開き、端末でmongod
コマンドを使用してデータベースを起動しました。
C:\ YourInstallationPath\bin> mongod
そしてmongo
コマンドを実行したとき、私は問題を抱えていました。
ねじれ、私は必要なフォルダを作成しましたが、それでも問題を抱えていました。そしてこれは、mongoサーバーが既に稼働していたためです。それを修正するために、私は再びmongod
コマンドを起動しました、そしてそれは自動的にC:\data\db
を参照しました。
他のユーザーはC:\data\db
を追加することを提案しましたが、再度mongod
を実行することについては話しませんでした。これで私の問題は完全に解決しました。
私はMacOSでBREWを使用してインストール後にmongodbを接続するために同じ問題を抱えていた。
問題はmongod.lock
でもありましたが、それ以前はmongodb 3.6がインストールされ、データベースディレクトリは/usr/local/var/mongodb
であり、古いファイルとmongod.lock
がありました
シンプル私は古いデータベースファイルを別のフォルダに移動し、/usr/local/var/mongodb
からすべてを削除しました
その後再起動しました。
brew services restart mongodb
そして、それは今うまく働いています。
私にとってこれと同じエラーを解決するもう一つの解決策、これはあなたが仮想マシン経由でSSH接続経由でmongoに(ローカルに)アクセスしている場合に限り(少なくとも私の設定で)、Linux特有の環境変数の問題かもしれません:
export LC_ALL=C
また、私はSudoサービスを開始して、デーモンサービスとしてmongoを実行することに成功しました。これは設定ファイルではなくコマンドライン引数を使用するため、設定ファイルに問題がある可能性があります。
mongod --fork --logpath /var/log/mongodb.log --auth --port 27017 --dbpath /var/lib/mongodb/admin
まず、c:\mongodb\bin>
に行き、mongoがポート27017でリッスンしていることをコンソールに表示したら、それはOKです。そうでなければ、コンソールを閉じてフォルダーc:\data\db
を作成し、再びmongodを起動します
まず、mongod serverを起動し、その後別の端末でmongo Shellを起動する必要があります。
起動用、mongoサーバー
1。パスが---の場合デフォルトパス(data/db)単純解雇mongod端末内
2。あなたのパスがそうでない場合data/dbそしてあなたは以下のように命令します:mongod --dbpath 'ここにあなたのパスが来ます'。
Mongo Shellを起動するために、単に他の端末でmongoを実行しました
あなたがこれを得たらポート27017での接続を待っているなら、あなたのMongoは正常に起動しました。
あなたは私のポイントを得ることができると思います
Windows OSでこの問題を解決する手順
brew(osx上)でインストールする場合、最初にmongod
と入力してSudo mkdir /data/db
start mondoDB Daemonを実行し(開いたままにします)、次に新しい端末タブでmongo
と入力してmongoを実行します。
Cドライブに「data」という名前のフォルダを作成し、dataフォルダの中に「db」という名前の別のフォルダを作成するだけです。それからmongod.exeを実行してください:)
私の場合、WindowsとUbuntuでは、ルートに/data/db
フォルダーを作成する必要がありました。 Ubuntuでは、1つの追加オプションが必要でした。ディレクトリのアクセス許可を付与します。
窓
mkdir c:/data/db
ubuntu:
Sudo mkdir -p /data/db
Sudo chmod 700 /data/db
その後、実行します
Sudo service mongod start
チェック
Sudo service mongod status
そして、実行します
mongo
最後に、これは簡単な方法です。
ターミナルを開き、mongodbの場所に移動します。私の場合は
e:\mongodb\bin>
次のコマンドを入力してEnterを押します。
mongod --config e:\mongodb\mongo.config
別の端末を開いてmongodbを起動してください。
mongo.exe
それは..モンゴを使用することができます
これは昔からの質問ですが、初心者として(Webstormを使用して)Mongo Explorer(ウィンドウの一番右側のタブ)をクリックする必要があると思います。そこから:
設定をクリックします。 - 参照ボタンをクリックします(「...」が付いたボタンのように見えます)。 - プログラムファイルに移動> MongoDB>サーバー> 3.4> bin> mongo.exe(あなたのバージョンはおそらく3.4と異なる) - その後、右側の緑色のプラス記号をクリックウィンドウが開きます - 「ラベル」スロットに名前を入力します。 - クリックして適用.
今すぐ接続する必要があります。端末に「mongod」と入力するだけでは不十分です。上記の手順も実行する必要があります。
Webstormを使用していないあなた方の方々に、私は前もって謝罪します。他のIDEを使用した手順についてはよくわかりません。
AWS EC2でMongoに接続したときに同じエラーが発生しました。これが解決したものです https://serverfault.com/a/347159/62381 設定ファイルからbind_ipを削除してください
これでうまくいく: -
Mongo 3.2 for windowでは、Mongodbサービスを起動する必要があります。そのため、Command Prompt as Administrator
を実行してからネットスタートMongoDB
私は同じ問題を抱えていた、私はE:\ Mongo Data Files\db\mongod.lockファイルを削除したので、それは働き始めた。問題はサーバの不適切なシャットダウンが原因です。だからロックファイルはきれいではありません。
上記のすべての解決策がうまくいかない場合は、これが役立つ可能性があります。どこか下の方で、vagrant boxを介してあなたのローカルのmongodbデータベースに接続したかもしれません。
Mongod.lockファイルを削除してください。そして "mongod -repair"を実行してください。 mongodサービスをアンインストール/再インストールすると問題が解決しました。
ありがとう。