技术栈

主页 > 网络 >

MongoDB replica sets搭建及使用

MongoDB replica sets搭建及使用

[日期:2012-02-03] 来源:Linux社区  作者:madding [字体:]

由于机器紧张,没办法搞分片(sharding),而只是用了复制集这个功能,一下介绍下自己这几天的实验。

环境:

目录结构

mongo_data

|--conf

    |--config.js

    |--rs0.cnf

    |--rs1.cnf

    |--rs2.cnf

|--data

    |--r0

    |--r1

    |--r2

|--key

    |--r0

    |--r1

    |--r2

|--log

    |--r0.log

    |--r1.log

    |--r2.log

|--run

    |--run_config.sh

   |--run_rs0.sh

   |--run_rs1.sh

   |--run_rs2.sh

举几个文件,其他类似:

rs0.cnf:

  1. replSet=rs1  
  2. keyFile=/home/madding/output/mongodb/replica_set/key/r0  
  3. dbpath=/home/madding/output/mongodb/replica_set/data/r0  
  4. logpath=/home/madding/output/mongodb/replica_set/log/r0.log  
  5. port=10240  

config.js:

  1. var config_rs1={  
  2.     _id:'rs1',  
  3.     members:[  
  4.         {_id:0, host:'127.0.0.1:10240', priority:1},  
  5.         {_id:1, host:'127.0.0.1:11240'},  
  6.         {_id:2, host:'127.0.0.1:12240'}]  
  7. }  
  8. rs.initiate(config_rs1);  
  9. rs.slaveOk();  
  10. printjson('status info:');  
  11. printjson(rs.status());  
  12. printjson('result info: ');  
  13. printjson(rs.isMaster());  

r0:

  1. ANKDIUOJHKJDLKFJHDOUDOJFKLDJ  

随便复杂,保证r0,r1,r2一致即可

run_config.sh:

  1. !/bin/bash  
  2. MONGODB_HOME=/usr/mytools/mongodb  
  3. $MONGODB_HOME/bin/mongo ../conf/config.js --port 10240 --quiet  
  4. exit  

run_rs0.sh:

  1. #!/bin/bash  
  2. MONGODB_HOME=/usr/mytools/mongodb  
  3. $MONGODB_HOME/bin/mongod -f ../conf/rs0.cnf --logappend --fork  
  4. exit  
linux

责任编辑:admin  二维码分享:
点击我更换图片

评论列表