Linux搭MongoDB分片键

步骤同win10,多加linux相关命令

1. 新建shard用于存放构建副本集的节点,并在对应的节点下建立db/log文件夹 用于存放数据/日志文件,新建conf配置文件

mkdir db log //建立文件夹
vim config.conf//新建conf文件

//conf文件
port=
dbpath=
logpath=
logappend=true //append追加日志
bind_ip=0.0.0.0 //允许远程连接
fork=true//启用此选项以调用fork创建子进程,在后台运行MongoDB,启用此时必须同时启用logpath

2.shard节点分别启动MongoDB

//在mongo/bin下执行
./mongod --config config文件路径 --replSet 副本集名称 --shardsvr

3. 将节点添加到副本集中

mongo --port 端口号 // 连接数据库
rs.initiate() //初始化副本集
rs.add("IP:PORT")//添加节点
rs.status() //查看副本集状态

4. config节点启动,添加副本集步骤同3

./mongod --config config文件路径 --replSet arg --configsvr

5. 启动mongos节点

./mongos --configdb config副本集名称arg/config节点IP:端口,XXX --port --logpath --bind_ip 0.0.0.0

6. 添加分片信息

./mongo --port PORT
sh.addShard("shard1的副本集名称/shard中的IP:PORT 用,隔开")
sh.status() //查看分片集信息
use admin //切换到admin数据库 以便后续分片及添加集
db.runCommand({enablesharding:"dbName"}) //运行dbName数据库分片
db.runCommand({shardcollection:"db.collection",key:{"field":1/"hashed"}}) //添加分片键
db.collection.stats().sharded //true 分片成功

7. 新建用户

db.createUser({user:"",pwd:"",roles:[{role:"权限",db:"dbName"}]})

db.auth("username","pwd")


role分为以下角色
用户角色:read readWrite 
管理角色:dbAdmin dbOwner userAdmin
集群角色:clusterAdmin clusterManager clutserMonitor

springboot配置中连接mongos端口即可,开防火墙端口

firewall-cmd --query-port=PORT/tcp 查询端口防火墙
no

firewall-cmd --add-port=PORT/tcp 开放端口防火墙

此文为个人学习记录,若存在问题请纠正

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值