2013-05-31 1 views
0

상태가 { "dropped": "FLIS", "ok", 1}인데 "show collections"를 실행하고 하나의 컬렉션이 남아 있는지 확인합니다. 데이터베이스에는 드롭 이전의 모든 레코드가 들어 있습니다.MongoDB db.dropDatabase() 하나의 컬렉션을 제외하고 모두 삭제 중

매우 초조해합니다. 준비 데이터베이스에서 새 데이터를 복사해야하지만 데이터를 가져 오는 유일한 방법은 copyDatabase를 사용하는 것입니다. 복사본을 실행하면 남은 컬렉션에 레코드가 복제됩니다. (아직) MongoDB에는 암시 적 이름 바꾸기 기능이 없기 때문에 메인 데이터베이스와 삭제할 수없는 컬렉션이 붙어 있습니다.

또한 db.collection.drop()를 사용하여 컬렉션을 개별적으로 제거하려고했습니다. 나는 "진실한"등을 얻는다, 그러나 아직도 완전히 사람이 거주 케 된 후에 아직도 존재한다.

도움말! 고맙습니다!

+0

이것은 이상합니다 .. 당신은 선택적으로 귀하의 스토리지 디렉토리에서 해당 db 파일을 제거하도록 선택할 수 있습니다. .ns 파일 (예 : 모든 . * 파일)도 삭제하십시오. –

+0

mongoDB의 버전은 무엇입니까? 어떤 버전의 셸? (당신은 쉘에서 이것을 할 수 있습니다 :> db.version() 그리고> version()은 서버의 두 번째 버전입니다. 쉘 버전입니다. 잘라내어 붙여 넣기를 할 수 있습니까? ? 멀리 가지 않을 컬렉션의 이름은 무엇입니까? –

+0

btw, "암시 적 이름 바꾸기"가 무엇을 의미합니까? 명시 적 이름 바꾸기가 있습니다 : http://docs.mongodb.org/manual/reference/command/renameCollection / –

답변

0

의견을 남겨 주셔서 감사합니다. 나는 10 분 후에 다시 시도했고 모든 것이 효과가 있었다. 이상한. @ asya-kamsky db.version()에서 2.4.3을 출력으로 사용하고 있습니다. 또한, 나는 (복사하지 않고) 데이터베이스에 대한 암시 적 이름 바꾸기를 의미하지 않았다. 그러나 나는 단지 콜렉션의 이름을 변경하려고하지 않았다. 이 문제를 다시 해결하지 않아도되기를 바랍니다.

관련 문제