1.创建文件目录
创建数据文件目录如下,这里为D:\software\MongoDB\data\data
创建日志文件目录如下,这里为D:\software\MongoDB\data\log
2.创建实例
打开三个命令行窗口,输入以下命令:
mongod --port 3000 --shardsvr --replSet rs-a --dbpath "D:\software\MongoDB\data\data\rs-a-0" --logpath "D:\software\MongoDB\data\log\rs-a-0.log"
mongod --port 3001 --shardsvr --replSet rs-a --dbpath "D:\software\MongoDB\data\data\rs-a-1" --logpath "D:\software\MongoDB\data\log\rs-a-1.log"
mongod --port 3002 --shardsvr --replSet rs-a --dbpath "D:\software\MongoDB\data\data\rs-a-2" --logpath "D:\software\MongoDB\data\log\rs-a-2.log"
3.初始化并配置Primary和Secondary复制集
重新打开一个命令行窗口,连接服务器:
mongo --port 3000
连接之后进行初始化:
rs.initate()
如图所示:
查看对应情况:
rs.isMaster()
如图所示:
添加另外两个并查看信息:
rs.add("localhost:3001")
rs.add("localhost:3002")
rs.status()
如图所示:
4.配置服务器
配置config–server
新打开两个命令行窗口:
mongod --port 27019 --configsvr --replSet rs-conf --dbpath "D:\software\MongoDB\data\data\config0" --logpath "D:\software\MongoDB\data\log\config0.log"
mongod --port 27020 --configsvr --replSet rs-conf --dbpath "D:\software\MongoDB\data\data\config1" --logpath "D:\software\MongoDB\data\log\config1.log"
新开一个窗口 连接27019 初始化
mongo --port 27019
rs.initiate()
回车 到PRIMARY
rs.add("localhost:27020")
如图所示:
开启Secondary读写操作
rs.secondaryOk()
5.配置路由服务器
新开一个窗口
mongos -configdb rs-conf/localhost:27019,localhost:27020 --logpath "D:\software\MongoDB\data\log\mongos.log" --port 27018
如图所示:
新开一个窗口
mongo --port 27018
添加创建的分片
将创建的分片添加进来,使用sh.addShard添加分片
sh.status()
sh.addShard("rs-a/localhost:3000,localhost:3001,localhost:3002")
使用sh.status()查看分片信息
6.使用sh.enableSharding()开启数据库的分片
sh.enableSharding("test")
如图所示:
sh.status()