windows mongodb 分片

版本4.0.9

分片的概念我就不说了。

下面讲我用的方式来测试mongodb的分片。

1.创建文件夹

在config创建文件

在data创建文件

2.配置cfg文件

分片1的副本集1

分片1的副本集2

分片1的副本集3

分片2的副本集1

分片2的副本集2

分片2的副本集3

配置节点1

配置节点2

配置节点3

路由节点

3.添加windows本地服务

cmd 管理员身份打开,切换到mongo的bin路径(注意 路由节点是mongos

mongod -config "E:\my\config\shard11.cfg" --serviceName "MongoDB_Shard11" --install --serviceDisplayName "MongoDB_Shard11"

mongod -config "E:\my\config\shard12.cfg" --serviceName "MongoDB_Shard12" --install --serviceDisplayName "MongoDB_Shard12"

mongod -config "E:\my\config\shard13.cfg" --serviceName "MongoDB_Shard13" --install --serviceDisplayName "MongoDB_Shard13"


mongod -config "E:\my\config\shard21.cfg" --serviceName "MongoDB_Shard21" --install --serviceDisplayName "MongoDB_Shard21"

mongod -config "E:\my\config\shard22.cfg" --serviceName "MongoDB_Shard22" --install --serviceDisplayName "MongoDB_Shard22"

mongod -config "E:\my\config\shard23.cfg" --serviceName "MongoDB_Shard23" --install --serviceDisplayName "MongoDB_Shard23"

mongod -config "E:\my\config\config2.cfg" --serviceName "MongoDB_Config2" --install --serviceDisplayName "MongoDB_Config2"

mongod -config "E:\my\config\config3.cfg" --serviceName "MongoDB_Config3" --install --serviceDisplayName "MongoDB_Config3"

mongos -config "E:\my\config\route.cfg" --serviceName "MongoDB_Route" --install --serviceDisplayName "MongoDB_Route"

然后启动windows服务。

4.配置切片和Config Server副本集(Config Server 没有主次节点之分)。

连接到副本集的任意一个节点

mongo 127.0.0.1:13211

rs.initiate( {_id : "shard1",members: [{ _id: 0, host: "127.0.0.1:13211", priority:3 },{ _id: 1, host: "127.0.0.1:13212", priority:2 },{ _id: 2, host: "127.0.0.1:13213", arbiterOnly:true }]})

连接到副本集的任意一个节点

mongo 127.0.0.1:13221

rs.initiate( {_id : "shard2",members: [{ _id: 0, host: "127.0.0.1:13221", priority:3 },{ _id: 1, host: "127.0.0.1:13222", priority:2 },{ _id: 2, host: "127.0.0.1:13223", arbiterOnly:true }]})

连接到副本集的任意一个节点

mongo 127.0.0.1:13201

rs.initiate( {_id : "rscfg",members: [{ _id: 0, host: "127.0.0.1:13201" },{ _id: 1, host: "127.0.0.1:13202" },{ _id: 2, host: "127.0.0.1:13203" }]})

5.配置路由节点

启动路由本地服务。

连接路由节点

mongo 127.0.0.1:13200

配置分片shard1,shard2

use admin

db.runCommand({addshard:"shard1/127.0.0.1:13211,127.0.0.1:13212,127.0.0.1:13213"})
db.runCommand({addshard:"shard2/127.0.0.1:13221,127.0.0.1:13222,127.0.0.1:13223"})

查看一下分片列表,确认分片是否配置成功

db.runCommand({ listshards:1 })

6.数据库配置

对school库启用分片
db.runCommand({enablesharding:"school"})

指定数据库里需要分片的集合和片键,哈希 分片
db.runCommand( { shardcollection : "school.user", key : {name: "hashed"} } )
范围片键
db.runCommand( { shardcollection : "school.use",key : {name: 1,time:1}} )

配置完毕。

 

 

插入数据,如果是哈希 分片这可以在两个分片上看到数据的分布,如果是范围片键 则需要大量数据,因为一个片建的默认值很大少量数据只会在一个片建上。

 

已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页