검색결과 리스트
-- MongoDB에 해당되는 글 17건
- 2013.01.14 [MongoDB] 복제 셋 (Replica set)
글
복제를 시험하기 위해, mongod를 master 용 slave용으로 각각 기동시킵니다.
1. master서버 시작
mongod --master --dbpath /var/tmp/master
2. slave서버 시작
mongod --slave --port 27018 --source localhost --dbpath /var/tmp/slave
slave는 --source 옵션으로 대상이 되는 master서버의 domain or ip와 port를 지정합니다.
또는 --source 옵션을 지정하는 대신 slave 측에서 직접 master 정보를 편집해도 됩니다.
이 경우 sources 컬렉션에 추가합니다.
여러개를 추가하여 복수의 master로 부터 복제시킬 수도 있습니다.
$ bin/mongo --port 27018 // slave에 접속
> use local
> db.sources.insert({host: "localhost:27017"})
> db.sources.insert({host: "192.168.xxx.xxx:27017"}) // 복수 추가도 가능
해당 mongo서버가 slave인지 여부 어떤 master를 보고있는가? 등도 sources를 보면 알 수 있습니다.
$ bin/mongo --port 27018 // slave에 접속
> use local
> db.sources.find({}, {host: 1})
// { "_id" : ObjectId("4bc030a343a4b90b52718a75"), "host" : "localhost"}
MongoDB 1.3.3 이상에서는 휴먼 에러 대책으로 slave 측에 복제를 일부러 늦출 수도 있다고 합니다.
- slavedelay 옵션 master에서 slave에 지연 시간을 초 단위로 지정할 수있는 것 같습니다. 데이터의 양이 그리 많지 않으면 아무것도 문제 없습니다만 복제가 대량으로 늦은 경우 복제가 중단되는 것 같습니다.
(생략... 원본 참조)
복제가 중단되고 버리면 {resync : 1}으로 직접 동작 시킬수 있습니다. 그 후 제대로 복제가 시작되었습니다.
$ bin/mongo --port 27018 // slave에 접속
> use admin
> db.runCommand({resync: 1})
출처 : http://blog.naver.com/PostView.nhn?blogId=parkjy76&logNo=30115080971
'-- MongoDB' 카테고리의 다른 글
[MongoDB] 백업과 복구 (0) | 2013.01.14 |
---|---|
[MongoDB] 저장 자바스크립트 (0) | 2013.01.08 |
[MongoDB] Database 명령어 (0) | 2013.01.08 |
[MongoDB] 집계 (0) | 2013.01.07 |
[MongoDB] 초보자를 위한 보안 관련 Tips (0) | 2013.01.07 |
RECENT COMMENT