mongo docker版配置副本集

文章目录

配置步骤

拉取image, mongo docker版本:

$ docker pull mongo:5.0.2

keyfile生成:

$ mkdir -p /data/keyfile  
$ openssl rand -base64 745 > /data/keyfile/mongoReplSet-keyfile  
$

#启动日志出现"errmsg":"Error reading file /data/keyfile/mongoReplSet-keyfile: Permission denied"
#容器启动时增加--privileged, 配置文件权限:
$ chmod 600 /data/keyfile/mongoReplSet-keyfile  
$ chown 999:root  /data/keyfile/mongoReplSet-keyfile

docker容器创建:

docker run -itd --name mongo \
  		--privileged \
  		-e MONGO_INITDB_ROOT_USERNAME=root \
  		-e MONGO_INITDB_ROOT_PASSWORD=123456 \
 		-p 27018:27017 \
  		-v /data/keyfile/:/data/keyfile \
  		mongo:5.0.2 --auth --keyFile /data/keyfile/mongoReplSet-keyfile --bind_ip_all --replSet rs1

初始化副本集:

$ docker exec -it mongo bash  
$ mongo -uroot -p123456  
> use admin
> conf={ _id : 'rs1', members: [   { _id : 0, host : "192.168.10.88:27018" } ] } 
> rs.initiate(conf)

为指定库创建连接用户:

> use test  
> db.createUser( {user: "test",pwd: "123456",roles: [ { role: "readWrite",db:"test"} ]})

增加节点:

> rs.add("192.168.10.88:27019")

删除节点:

> rs.remove("192.168.10.88:27019")

设置节点优先级:

> conf=rs.conf()  

可从打印中看到节点_id,将_id为1的节点优先级设为2
在这里插入图片描述

> conf.members[1].priority=2  
> rs.reconfig(conf)  
> rs.status()  

#打印中可以看到member中的stateStr发生变化
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值