MongoDB-分片集群搭建
分片集群搭建
搭建配置服务器复制集:
- 早期版本的配置服务器只要一台即可
- 最新版本 MongoDB 要求配置服务器必须是一个复制集
搭建分片服务器复制集:
- 用于保存数据的多台电脑
搭建路由服务器:
- 用于建立配置服务器和分片服务器之间的关系
搭建配置服务器集群
编写配置文件
注意这里是下载了一台全新的 MongoDB 再次进行的搭建的,这里不介绍全新的去哪里下载前面有,然后更改配置文件内容如下:
# 数据保存到哪
storage:
dbPath: D:\Web\MongoDB4.X\MongoDBSharding\mongodb-config-27018\data
journal:
enabled: true
# 日志保存到哪
systemLog:
destination: file
logAppend: true
path: D:\Web\MongoDB4.X\MongoDBSharding\mongodb-config-27018\log
# 绑定的IP和端口号
net:
port: 27018
bindIp: 127.0.0.1
# 复制集名称
replication:
replSetName: 'it6666'
# 复制集的作用
sharding:
clusterRole: configsvr
?> 这里是一个集群的,所以关于其它两台自己分别去更改端口号进行搭建
注册 MongoDB 服务
管理员权限运行终端, 执行如下指令:
mongod --config D:\Web\MongoDB4.X\MongoDBSharding\mongodb-config-27018\config\mongo.config --serviceName "MongoDB27018" --serviceDisplayName "MongoDB27018" --install
mongod --config D:\Web\MongoDB4.X\MongoDBSharding\mongodb-config-27019\config\mongo.config --serviceName "MongoDB27019" --serviceDisplayName "MongoDB27019" --install
mongod --config D:\Web\MongoDB4.X\MongoDBSharding\mongodb-config-27020\config\mongo.config --serviceName "MongoDB27020" --serviceDisplayName "MongoDB27020" --install
在任务管理器中开启任务:
测试服务可用性
mongo --host 127.0.0.1 --port 27018
mongo --host 127.0.0.1 --port 27019
mongo --host 127.0.0.1 --port 27020
添加复制集
rs.initiate({
_id: 'it6666',
configsvr: true,
members: [
{_id: 0, host: '127.0.0.1: 27018'
},
{_id: 1, host: '127.0.0.1: 27019'
},
{_id: 2, host: '127.0.0.1: 27020'
}
]
})
搭建分片服务器集群
编写配置文件:
# 数据保存到哪
storage:
dbPath: D:\Web\MongoDB4.X\MongoDBSharding\mongodb-shard-27023\data
journal:
enabled: true
# 日志保存到哪
systemLog:
destination: file
logAppend: true
path: D:\Web\MongoDB4.X\MongoDBSharding\mongodb-shard-27023\log\mongod.log
# 绑定的IP和端口号
net:
port: 27023
bindIp: 127.0.0.1
# 复制集名称
replication:
replSetName: 'BNTang_It6666'
# 复制集的作用
sharding:
clusterRole: shardsvr
?> 这里是一个集群的,所以关于其它两台自己分别去更改端口号进行搭建
注册 MongoDB 服务
管理员权限运行终端, 执行如下指令:
mongod --config D:\Web\MongoDB4.X\MongoDBSharding\mongodb-shard-27021\config\mongo.config --serviceName "MongoDB27021" --serviceDisplayName "MongoDB27021" --install
mongod --config D:\Web\MongoDB4.X\MongoDBSharding\mongodb-shard-27022\config\mongo.config --serviceName "MongoDB27022" --serviceDisplayName "MongoDB27022" --install
mongod --config D:\Web\MongoDB4.X\MongoDBSharding\mongodb-shard-27023\config\mongo.config --serviceName "MongoDB27023" --serviceDisplayName "MongoDB27023" --install
在任务管理器中开启任务:
测试服务可用性
mongo --host 127.0.0.1 --port 27021
mongo --host 127.0.0.1 --port 27022
mongo --host 127.0.0.1 --port 27023
添加复制集
rs.initiate({
_id: 'BNTang_It6666',
members: [
{_id: 0, host: '127.0.0.1:27021'},
{_id: 1, host: '127.0.0.1:27022'},
{_id: 2, host: '127.0.0.1:27023'}]
})
搭建路由服务器
编写配置文件
# 日志保存到哪
systemLog:
destination: file
logAppend: true
path: D:\Web\MongoDB4.X\MongoDBSharding\mongodb-router-27024\log\mongod.log
# 绑定的IP和端口号
net:
port: 27024
bindIp: 127.0.0.1
# 配置服务器地址
sharding:
configDB: it6666/127.0.0.1:27018,127.0.0.1:27019,127.0.0.1:27020
注册 MongoDB 服务
管理员权限运行终端, 执行如下指令:
mongos --config D:\Web\MongoDB4.X\MongoDBSharding\mongodb-router-27024\config\mongo.config --serviceName "MongoDB27024" --serviceDisplayName "MongoDB27024" --install
在任务管理器中开启任务:
测试服务可用性
mongo --host 127.0.0.1 --port 27024
添加分片服务器
sh.addShard( "BNTang_It6666/127.0.0.1:27021")
sh.addShard( "BNTang_It6666/127.0.0.1:27022")
sh.addShard( "BNTang_It6666/127.0.0.1:27023")
给指定数据库开启分片
sh.enableSharding("demo")
指定分片片键
sh.shardCollection("demo.user",{'age':1})
sh.shardCollection("demo.user",{'name':hashed})
分类:
MongoDB4.X+新特性
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具