2017-08-22 4 views
2

mongoDBを運用データベース用のDBMSとして使用します。 DB用に2つのレプリカセットを有効にしました。dropDatabaseは、mongoDB内のすべてのデータベースに対して、レプリカセット付きで呼び出されます

青のうち、私たちのプロダクションの両方のデータベースが削除されていることがわかりました。私たちは誰もアクセスできなかったことを絶対に確信しています。ログを調べると、両方のデータベースのdropDatabaseが実際に呼び出されたことがわかりました。しかし、接続確立のためのログステートメントは見つかりませんでした。誰かがDBを削除するためにmongo shellまたはbashを使用した場合、新しい接続のログもあるはずです。プライマリ用

LOG文:

2017-08-17T14:38:47.019+0000 I -  [conn527] AssertionException handling request, closing client connection: 17132 SSL handshake received but server is started without SSL support 
2017-08-22T00:18:22.694+0000 I COMMAND [conn541] dropDatabase db1 starting 
2017-08-22T00:18:22.708+0000 I COMMAND [conn541] dropDatabase db1 finished 
2017-08-22T00:18:23.832+0000 I COMMAND [conn542] dropDatabase db2 starting 
2017-08-22T00:18:23.843+0000 I COMMAND [conn542] dropDatabase db2 finished 

、それは最初の行のタイムスタンプからかなり明らかなように、モンゴサーバで確立された新たな接続はありませんでした最後の5日間で

ことができる誰かしてくださいmongodbサーバーに何が起こったのかを理解するのに役立ちます。また、どんな指針も大変ありがとうございます。

+0

"who"が接続541であることを確認するには、mongodbログを検索します(十分なログファイルがある場合) 'grep -R" \#541 "* .log' – JJussi

+0

最後の3ヶ月のログがあり、541または542の接続が見つかりませんでした。 – thrust

+0

「x.x.x.xからの接続受け付け」イベントはすべて正常に記録されるため、これは非常に奇妙です。そしてあなたの古いファイルは、あなたがgrepしたものが 'zip'ではありませんでした。それから、 'some one'がそれらの行を削除しました。 – JJussi

答えて

0

あなたのインスタンスがまだあなたが起こったかを見つけるために

db.adminCommand({ getLog: "global" }) 

を発行することができます実行している場合。 getLogコマンドは、ログファイルからではなくRAMからMongoDBログを読み込みます。

+0

お寄せいただきありがとうございます。しかし、以前はサーバーを再起動していました。だから、これは助けにならないのではないかと心配しています。他のポインタを覚えていますか? – thrust

関連する問題