1

つまり、1つのmongoDBに2つのコレクションがある2TBのハードドライブがあります。

  • コレクション1は約500GBで、完全に必須です
  • コレクション2は約1500GBであり、削除する必要があります。

誤ってHDD全体をいっぱいにして、0%のスペースを残してしまうプロセスを実行していました。LinuxディストリビューションとこのmongoDBを除いて、マシンには文字通り何もありません。

  • コレクション2を削除したいのですが。

これを行うために、私は通常、mongoに入って入力しますdb.collection.drop()

ただし、mongoDBは現在実行されていません。それを開始するために、私は使用しています:

  • [bobby@myPC bin]# ./mongod --dbpath /home/mongo &

ただし、HDDにスペースがないため、次のように返されます。

[bobby@myPC bin]# Thu Feb 14 17:47:10 [initandlisten] MongoDB starting : pid=1264 port=27017 dbpath=/home/mongo 64-bit host=localhost.localdomain
Thu Feb 14 17:47:10 [initandlisten] db version v2.2.3, pdfile version 4.5
Thu Feb 14 17:47:10 [initandlisten] git version: f570771a5d8a3846eb7586eaffcf4c2f4a96bf08
Thu Feb 14 17:47:10 [initandlisten] build info: Linux ip-10-2-29-40 2.6.21.7-2.ec2.v1.2.fc8xen #1 SMP Fri Nov 20 17:48:28 EST 2009 x86_64 BOOST_LIB_VERSION=1_49
Thu Feb 14 17:47:10 [initandlisten] options: { dbpath: "/home/mongo" }
Thu Feb 14 17:47:10 [initandlisten] journal dir=/home/mongo/journal
Thu Feb 14 17:47:10 [initandlisten] recover : no journal files present, no recovery needed
Thu Feb 14 17:47:10 [initandlisten]
Thu Feb 14 17:47:10 [initandlisten] ERROR: Insufficient free space for journal files
Thu Feb 14 17:47:10 [initandlisten] Please make at least 3379MB available in /home/mongo/journal or use --smallfiles
Thu Feb 14 17:47:10 [initandlisten]
Thu Feb 14 17:47:10 [initandlisten] exception in initAndListen: 15926 Insufficient free space for journals, terminating
Thu Feb 14 17:47:10 dbexit:
Thu Feb 14 17:47:10 [initandlisten] shutdown: going to close listening sockets...
Thu Feb 14 17:47:10 [initandlisten] shutdown: going to flush diaglog...
Thu Feb 14 17:47:10 [initandlisten] shutdown: going to close sockets...
Thu Feb 14 17:47:10 [initandlisten] shutdown: waiting for fs preallocator...
Thu Feb 14 17:47:10 [initandlisten] shutdown: lock for final commit...
Thu Feb 14 17:47:10 [initandlisten] shutdown: final commit...
Thu Feb 14 17:47:10 [initandlisten] shutdown: closing all files...
Thu Feb 14 17:47:10 [initandlisten] closeAllFiles() finished
Thu Feb 14 17:47:10 [initandlisten] journalCleanup...
Thu Feb 14 17:47:10 [initandlisten] removeJournalFiles
Thu Feb 14 17:47:10 [initandlisten] shutdown: removing fs lock...
Thu Feb 14 17:47:10 dbexit: really exiting now

スペースがないため、このコレクションを削除できません。そして、このコレクションを削除できないため、スペースがありません。

どうすればこれを修正できますか?/ home / mongo内のどのmongoDBファイルを取り出せるかを特定する方法はありますか?

4

1 に答える 1

2

エラーメッセージに基づいて、ジャーナル用の十分なスペースがないことについての不満。ジャーナリングなしで実行する本番環境では理想的ではありませんが、問題を修正しながら、ジャーナリングなしで実行してみることができます。

./mongod --nojournal --dbpath /home/mongo &

編集:あなたの質問に答えるために、mongoはコレクションではなくデータベースごとにファイルを作成して割り当てます。そのため、特定のファイルをターゲットにしてコレクションを削除することはできません。

于 2013-02-14T00:49:20.440 に答える