ct38 发表于 2018-10-28 08:23:57

mongodb随笔

  Mongodb分片群集部署
  1、         下载mongodb
  http://www.mongodb.org/downloads
  2、         replicaSet安装部署
  $mongod.exe --dbpath d:\data\db1 --replSet myset --port 27017 --logpath d:\data\shard1.log --rest
  $ mongod.exe –dbpath d:\data\db2 –replSet myset --port 27018 --logpath d:\data\shard2.log --rest
  $mongod.exe --dbpath d:\data\db3 --replSet myset --port 27019 --logpath d:\data\shard3.log --rest
  $mongo –port 27017
  在新做replica的时候,primary可以有数据,但是secondary绝对不能有数据,否则新建将失败。但是在添加secondary节点的时候,可以有数据。这样的话,在考虑迁移的时候必须要有注意。
  >config = {_id:’myset’,members: [
  {_id:0,host:’127.0.0.1:27017’},
  {_id:1,host:’127.0.0.1:27018’},
  {_id:2,host:’127.0.0.1:27019’,arbiterOnly:true}
  ]}
  >rs.initiate(config)
  >rs.status()
  
  
  #add new numbers
  >rs.add({_id:3,host:’127.0.0.1:27020’})
  >rs.add({_id:4,host:’127.0.0.1:27021’,arbiterOnly:true})
  #另外一种添加节点:
  primary>config=rs.conf()
  primary>config.members=[{_id:5,host:"127.0.0.1:27023"},config.members,{priority:5}]       增加新节点,并使成为主节点。
  primary>rs.reconfig(config) 强制生效。
  
  #remove new numbers
  >rs.remove(“127.0.0.1:27020”)
  
  #删除节点:
  必须在主节点上操作:
  PRIMARY>rs.remove(“127.0.0.1:27020”)
  操作完毕后登陆27020
  Mongo 127.0.0.1:27020
  STARTUP2>use admin
  STARTUP2>db.shutdownServer()
  #删除节点的令外一种办法:
  primary>config=rs.conf()
  primary>config.members=,config.members,config.members]
  primary>rs.reconfig(config,{force:ture})使配置强制生效。

    #mongodb replica强制切换primary有2种办法:
  一、
    primary>
config = {_id:'myset',members: [
  {_id:0,host:"127.0.0.1:27017",priority:1},
  {_id:1,host:"127.0.0.1:27018",priority:2},

    {_id:2,host:"127.0.0.1:27019",priority:1,arbiterOnly:true}]}

    primary>rs.reconfig(config)

    secondary>(显示为secondary,则证明切换成功。)
  二、
  primary>config=rs.conf()
  primary>config.members.priority=2
  primary>rs.reconfig(config)
  secondary> 切换成功。
  
  #记录几种状态
  STARTUP2
  RECOVERING
  PRIMARY
  SECONDARY

页: [1]
查看完整版本: mongodb随笔