mongodb의 레플리카( replica set)의 slave에서 질의를 실행하려면, 에러가 난다.


변경과 같은 위험한 요소를 막기 위함이다. 


특히 레플리카(replica set) 버전 업그레이드 후 제대로 데이터가 있는지 수동 테스트를 위해서 필요하다. 



 replset:SECONDARY> show collections

2015-12-30T19:45:18.149+0900 E QUERY    Error: listCollections failed: { "note" : "from execCommand", "ok" : 0, "errmsg" : "not master" }


replset:SECONDARY> db.customer.find()

Error: error: { "ok" : 0, "errmsg" : "not master and slaveOk=false", "code" : 13435 }





그래도 질의를 해보려면, rs.slaveOk() 를 실행하면 커맨드로 질의할 수 있다.


replset:SECONDARY> rs.slaveOk()

replset:SECONDARY> db.customer.find()

....



Posted by '김용환'
,