web-dev-qa-db-ja.com

MongodbはUbuntu 16.04で動作しません

このチュートリアルに従ってmongodbをインストールしました here 、インストール中にエラーはありませんが、このコマンドを使用してmongodサーバーを起動しようとするとSudo systemctl start mongodbチュートリアルで言及されているように、このコマンドを使用して実行中かどうかを確認しようとすると、このエラーが発生しますSudo systemctl status mongodb

● mongodb.service - High-performance, schema-free document-oriented 

database
   Loaded: loaded (/etc/systemd/system/mongodb.service; enabled; vendor preset: 
   Active: failed (Result: exit-code) since Rab 2016-06-01 18:04:20 MYT; 4s ago
  Process: 8241 ExecStart=/usr/bin/mongod --quiet --config /etc/mongod.conf (cod
 Main PID: 8241 (code=exited, status=14)

Jun 01 18:04:20 yasinya systemd[1]: Started High-performance, schema-free docume
Jun 01 18:04:20 yasinya systemd[1]: mongodb.service: Main process exited, code=e
Jun 01 18:04:20 yasinya systemd[1]: mongodb.service: Unit entered failed state.
Jun 01 18:04:20 yasinya systemd[1]: mongodb.service: Failed with result 'exit-co
lines 1-10/10 (END)

だから誰もが何が間違っているのか、どうすれば修正できるのかを伝えることができます。

17
Yya09

最近、私は同じ問題を解決しました。私はグーグルで解決策を見つけることができませんでしたが、手がかりを得ることができます。私の場合、この問題はmongodb-27017.sockファイルに関連していました。

Failed to unlink socket file /tmp/mongodb-27017.sock errno:1 Operation not permitted

そのため、/ tmp/mongodb-27017.sockファイルの権限をデフォルトのmongodbユーザーに変更しました。

Sudo chown mongodb /tmp/mongodb-27017.sock
Sudo chgrp mongodb /tmp/mongodb-27017.sock

この後 Sudo systemctl status mongodb正常に動作し、mongodbが開始されます。

38
Ranjeet Singh

同じ問題で立ち往生、ちょうど再起動

Sudo reboot
25
Eudie

このエラーは、回復不能なエラー、キャッチされていない例外、またはキャッチされていないシグナルを検出したMongoDBアプリケーションによって返されます。システムは、クリーンシャットダウンを実行せずに終了します。

次のコマンドで問題を解決しました。

Sudo chown -R mongodb:mongodb /var/log/mongodb
Sudo chown -R mongodb:mongodb /var/lib/mongodb
Sudo chmod -R 755 /var/lib/mongodb
Sudo chmod -R 755 /var/log/mongodb

Sudo chown mongodb /tmp/mongodb-27017.sock
Sudo chgrp mongodb /tmp/mongodb-27017.sock

その後、サービスを再起動します

Sudo systemctl restart mongod

次に、mongodbサービスを確認します

Sudo systemctl status mongod
9
Dara Vichit

私は同じ使用をしました、

ただ解決する

Sudo reboot
7
sagar jethi

最初に、mongoログを調べる必要があります。何がおかしいのかがわかるはずです。

$ tail -n 100 /var/log/mongodb/mongod.log

このコマンドは、ログファイルの最後の100行を表示し、正確な問題を示します。

たとえば、同じポート27017を使用してmongoインスタンスを実行していたため、私のものは機能していませんでした。別のインスタンスを実行すると、インスタンスの読み込みに失敗しました。

ログ

2018-05-11T19:03:49.102-0400 I CONTROL  [initandlisten] MongoDB starting : pid=1247 port=27017 dbpath=/var/lib/mongodb 64-bit Host=dev-hyuen
2018-05-11T19:03:49.103-0400 I CONTROL  [initandlisten] db version v3.2.20
2018-05-11T19:03:49.103-0400 I CONTROL  [initandlisten] git version: a7a144f40b70bfe290906eb33ff2714933544af8
2018-05-11T19:03:49.103-0400 I CONTROL  [initandlisten] OpenSSL version: OpenSSL 1.0.2g  1 Mar 2016
2018-05-11T19:03:49.103-0400 I CONTROL  [initandlisten] allocator: tcmalloc
2018-05-11T19:03:49.103-0400 I CONTROL  [initandlisten] modules: none
2018-05-11T19:03:49.103-0400 I CONTROL  [initandlisten] build environment:
2018-05-11T19:03:49.103-0400 I CONTROL  [initandlisten]     distmod: ubuntu1604
2018-05-11T19:03:49.103-0400 I CONTROL  [initandlisten]     distarch: x86_64
2018-05-11T19:03:49.103-0400 I CONTROL  [initandlisten]     target_Arch: x86_64
2018-05-11T19:03:49.103-0400 I CONTROL  [initandlisten] options: { config: "/etc/mongod.conf", net: { bindIp: "127.0.0.1", port: 27017 }, storage: { dbPath: "/var/lib/mongodb", journal: { enabled: true } }, systemLog: { destination: "file", logAppend: true, path: "/var/log/mongodb/mongod.log", quiet: true } }
2018-05-11T19:03:49.124-0400 E NETWORK  [initandlisten] listen(): bind() failed errno:98 Address already in use for socket: 127.0.0.1:27017
2018-05-11T19:03:49.124-0400 E NETWORK  [initandlisten]   addr already in use
2018-05-11T19:03:49.124-0400 E STORAGE  [initandlisten] Failed to set up sockets during startup.
2018-05-11T19:03:49.124-0400 I CONTROL  [initandlisten] dbexit:  rc: 48
2
Hoi Yuen

ステップ1。 Sudo systemctl stop mongodb

ステップ2。 Sudo systemctl start mongod

ステップ3。 Sudo systemctl status mongod

あなたのお役に立てばと思います

1
vasudev.p

私の場合、mongoは27017を使用できませんでした。27017ポートを使用しているものをすべて停止し、mongoを再起動する必要がありました。

1
Etibar Hasanov

しばらくグーグルで回りました。これは、/ var/lib/mongodbおよび/tmp/mongodb-27017.lockの許可設定が間違っているためです。所有者をmonogdbユーザーに変更する必要があります

chown -R mongodb:mongodb /var/lib/mongodb
chown mongodb:mongodb /tmp/mongodb-27017.sock
0
xingliang cai

私の場合、システムはmongod.serviceを見つけることができませんでした次のコマンドを実行すると修正されます

Sudo systemct1 enable mongod

次に、データベースを再起動します

Sudo service mongod restart
0
Abhijeet kumar

この問題は、/dev/root/(私のものでした)。

確認する df -hと十分な空き領域があるかどうかを確認します。そうでない場合は、説明 there のように、ログファイルを別のディスクに移動してスペースを解放してください。

Sudo /etc/init.d/rsyslog stop
Sudo mv /var/log /OTHERDISK/
Sudo ln -s /OTHERDISK/log /var/log
Sudo /etc/init.d/rsyslog start

助けてくれるといいな

0
phenric