2017-02-07 2 views
4

mongodb 데이터 백업을 수행 할 수는 있지만 mongodb schama 백업은 확실하지 않습니다. 데이터가 아닌 MONGODB 스키마의 덤프를 수행 할 수있는 방법이 있습니까?mongodb 스키마 덤프를 얻는 방법

답변

2

당신은 mongorestore ... JSON, 또는 CSV 가져 오기 등의 작업에 사용되는 등을 사용할 필요가

당신은 아래의 문서에서 mongorestore에 대한 자세한 내용을보실 수 있습니다

; 나는 그들이 매우 도움이되는 것에 따라 그들이 볼 것이고, 그들 위에서 읽힐 것이다.

http://www.mongodb.org/display/DOCS/Import+Export+Tools#ImportExportTools-mongorestore

는 또한 팁 http://learnmongo.com을 확인하고 도움이 될 수 있습니다! 또는

How to use the dumped data by mongodump? 희망이 도움이 될 수 있습니다.

+0

MongoDB 링크에 덤프/내보내기 스키마 옵션이 표시되지 않았습니다. "mongodump는 데이터베이스의 문서 만 캡처합니다"라는 관심 항목 하나를 찾았습니다. mongodump가 스키마를 포착하지 않으면 어떻게 mongorestore가 스키마를 복구 할 수 있습니까? – JohnC

0

MongoDB는 NoSQL 데이터베이스입니다.

컬렉션에 대한 고정 스키마가 없으므로 mongo 셸에서 컬렉션 스키마를 찾을 수있는 기능이 없습니다.

고정 스키마는 RDBMS 데이터베이스에 적용 할 수 있습니다. mongodb와 같은 NoSQL DB에서는 필수는 아니지만 필요한 경우 구현 논리를 사용하여 동일한 스키마를 적용 할 수 있습니다.

동일한 컬렉션의 문서는 다른 스키마 일 수 있습니다. 컬렉션의 모든 문서가 동일한 스키마를 다음 경우 스키마

In Mongo Shell 
var k = db.mycollection.findOne(); 
for (i in k){print (i)}; 
    _id 
    name 

에게 당신을 위해 작동이 방법을 찾기 위해

db.mycollection.insert([ 
{ "_id":1, "name":"A"}, 
{ "_id":2, "name":"CD", "age":29}, 
{ "_id":3, "name":"AB", "age":28}, 
{ "_id":4, "name":"ABC", "age":27, "emailId":"[email protected]"}, 
{ "_id":5, "name":"ABCD", "age":29, "emailId":"[email protected]"}]); 

db.mycollection.find(); 

{ "_id" : 1, "name" : "A" } 
{ "_id" : 2, "name" : "CD", "age" : 29 } 
{ "_id" : 3, "name" : "AB", "age" : 28 } 
{ "_id" : 4, "name" : "ABC", "age" : 27, "emailId" : "[email protected]" } 
{ "_id" : 5, "name" : "ABCD", "age" : 29, "emailId" : "[email protected]" } 

접근 방법 아래의 예를 참조하십시오.

+0

비록 MongoDB가 스키마가 없다하더라도, 샤딩과 인덱싱을 설정하는 스크립트가 있어야만합니다. – JohnC