2017-01-17 8 views
4

私はLinuxサーバにMongoDBデータベースを設定しています。しかし、私は、2〜4日ごとにデータベース全体のコレクションが削除されることに気付きました。私はMongoDBののログを見た:Mongodbのコレクションは自動的に破棄されます

Mon Jan 16 08:01:14.375 [PeriodicTask::Runner] task: DBConnectionPool-cleaner took: 11ms 
Mon Jan 16 08:01:14.404 [PeriodicTask::Runner] task: WriteBackManager::cleaner took: 12ms 
Mon Jan 16 08:01:18.402 [TTLMonitor] query PLEASE_READ.system.indexes query: { expireAfterSeconds: { $exists: true } } ntoreturn:0 ntoskip:0 nscanned:1 keyUpdates:0 locks(micros) r:104348 nreturned:0 reslen:20 104ms 
Mon Jan 16 08:25:03.640 [initandlisten] connection accepted from 95.211.153.138:58622 #135 (7 connections now open) 
Mon Jan 16 08:25:04.286 [conn135] dropDatabase PLEASE_READ starting 
Mon Jan 16 08:25:04.287 [conn135] removeJournalFiles 
Mon Jan 16 08:25:04.490 [conn135] dropDatabase PLEASE_READ finished 
Mon Jan 16 08:25:04.508 [conn135] command PLEASE_READ.$cmd command: { dropDatabase: 1.0 } ntoreturn:1 keyUpdates:0 locks(micros) W:246737 reslen:62 246ms 
Mon Jan 16 08:25:04.579 [conn135] dropDatabase server_db starting 
Mon Jan 16 08:25:04.579 [conn135] removeJournalFiles 
Mon Jan 16 08:25:04.686 [conn135] dropDatabase server_db finished 
Mon Jan 16 08:25:04.686 [conn135] command server_db.$cmd command: { dropDatabase: 1.0 } ntoreturn:1 keyUpdates:0 locks(micros) W:107150 reslen:60 107ms 
Mon Jan 16 08:25:04.756 [conn135] dropDatabase local starting 
Mon Jan 16 08:25:04.756 [conn135] removeJournalFiles 
Mon Jan 16 08:25:04.780 [conn135] dropDatabase local finished 
Mon Jan 16 08:25:04.850 [conn135] dropDatabase admin starting 
Mon Jan 16 08:25:04.850 [conn135] removeJournalFiles 
Mon Jan 16 08:25:04.852 [conn135] dropDatabase admin finished 
Mon Jan 16 08:25:04.922 [conn135] dropDatabase test starting 
Mon Jan 16 08:25:04.922 [conn135] removeJournalFiles 
Mon Jan 16 08:25:04.926 [conn135] dropDatabase test finished 
Mon Jan 16 08:25:05.139 [conn135] allocating new ns file /var/lib/mongodb/WARNING.ns, filling with zeroes... 
Mon Jan 16 08:25:05.502 [FileAllocator] allocating new datafile /var/lib/mongodb/WARNING.0, filling with zeroes... 
Mon Jan 16 08:25:05.537 [FileAllocator] done allocating datafile /var/lib/mongodb/WARNING.0, size: 64MB, took 0.009 secs 
Mon Jan 16 08:25:05.547 [FileAllocator] allocating new datafile /var/lib/mongodb/WARNING.1, filling with zeroes... 
Mon Jan 16 08:25:05.567 [conn135] build index WARNING.WARNING { _id: 1 } 
Mon Jan 16 08:25:05.569 [FileAllocator] done allocating datafile /var/lib/mongodb/WARNING.1, size: 128MB, took 0.021 secs 
Mon Jan 16 08:25:05.592 [conn135] build index done. scanned 0 total records. 0.023 secs 
Mon Jan 16 08:25:05.653 [conn135] insert WARNING.WARNING ninserted:1 keyUpdates:0 locks(micros) w:492848 513ms 

私はコレクションのいずれかにTTL indexを使用していないと私は、データベースをドロップするようにLinuxでの任意のスクリプトを実行しないでください。

私の質問は、コレクションが削除された理由です。それはTTLの原因ですか?

ありがとうございます。

+3

をより多くを読むことができます。 [あなたのデータをランクする悪意のある攻撃を回避する方法](https://www.mongodb.com/blog/post/how-to-avoid-a-malicious-attack-that-ransoms-your-data)をお読みください。 – Stennie

+3

また、MongoDB 2.4は2016年3月に廃止されました。現在サポートされているプロダクションリリース(MongoDB 3.0以降、2017年1月現在)にアップグレードすることを強くお勧めします。 – Stennie

+0

@Stennieあなたはdbのユーザーを追加し、ユーザーの資格情報をapplication.propertiesファイルにSpringブートアプリケーションに追加しました。もう落ちないよ! – ddarellis

答えて

0

mongodbはコレクションを自動的に削除できませんが、BSONレコードは自動的に削除されます。 BSONレコードに存在する日付フィールドにttl(Time to live)インデックスを設定するだけです。あなたはそう、リモートの攻撃者が接続することができますし、データベースを読み取り、削除など、配備へのフルアクセス権を持っているあなたのMongoDB展開を確保していないように見えますここ

https://docs.mongodb.com/manual/tutorial/expire-data/

関連する問題