• mongodb复制集


    1、先来一个脚本,启动三个节点

    #! /bin/bash
    IP='139.199.64.189'
    NA='RSC'
    if [ "$1" = "reset" ]; then
        killall -9 mongo
        rm -rf /home/m*
        exit
    fi
    
    #start three sharding in this methine
    if [ "$1" = "install" ]; then
        mkdir -p /home/m0 /home/m1 /home/m2 /home/mlog
    /usr/local/mongbd/bin/mongod --dbpath /home/m0 --logpath /home/mlog/m17.log  --logappend --port 27017 --fork  --replSet ${NA} --smallfiles
    /usr/local/mongbd/bin/mongod --dbpath /home/m1 --logpath /home/mlog/m18.log  --logappend --port 27018 --fork  --replSet ${NA} --smallfiles
    /usr/local/mongbd/bin/mongod --dbpath /home/m2 --logpath /home/mlog/m19.log  --logappend --port 27019 --fork  --replSet ${NA} --smallfiles
    exit
    
    fi
    
    
    if [ "$1" = "repl" ]; then
    #add sharding 
    /usr/local/mongbd/bin/mongo --port 27017  <<EOF
    use admin
    var rsconf = {
        _id:'${NA}',
        members:[
             {_id:0,host:'${IP}:27017'}
            ]
    
        }
    
    rs.initiate(rsconf);
    rs.add('${IP}:27018');
    rs.add(
    '${IP}:27019'); EOF exit fi

    2、进入主节点(默认是20717节点)

    /usr/local/mongbd/bin/mongo --port 27017 
    rs.status() #查看复制集的状态,从这个案例可以看到一主两重,即PRIMARY,SECONDARY
    rs.add("139.199.64.189:27019") #如果脚本没有添加进来,可以使用这个命令手动添加

    #循环插入数据
    for(var i = 0;i<40000;i++){
    db.user.insert({name:'hello'+i,age:i})
    }

    db.user.find().count()#查看插入的数据条数

    3、进入复制节点查看是否有数据

    ./mongo --port 27018
    #注意,先要执行,否则报错
    rs.slaveOk()
    db.user.find().count() #可以看到主节点插入的数据

    到此结束,欢迎留言一起学习!

  • 相关阅读:
    python 登录与注册
    python 深浅拷贝
    列表|字典|集合推导式
    正则表达式——笔记
    Python thread
    allure报告自定义logo和名称
    回归测试用例编写思路
    测试用例规范【如何编写测试用例】
    git与pycharm的使用详解(git+gitlab+pycham)
    接口自动化
  • 原文地址:https://www.cnblogs.com/ywjfx/p/10197435.html
Copyright © 2020-2023  润新知