创建所需的目录
1. 配置分片复制集
- 创建实例
- cmd进入命令行窗口(三个命令行窗口),分别输入下面三条语句
- mongod --port 3000 --shardsvr --replSet rs-a --dbpath “E:\mongodb\data\data\rs-a-0” --logpath “E:\mongodb\data\data\rs-a-0.log”
- mongod --port 3001 --shardsvr --replSet rs-a --dbpath “E:\mongodb\data\data\rs-a-1” --logpath “E:\mongodb\data\data\rs-a-1.log”
- mongod --port 3002 --shardsvr --replSet rs-a --dbpath “E:\mongodb\data\data\rs-a-2” --logpath “E:\mongodb\data\data\rs-a-2.log”
- 初始化,配置Primary和Secondary复制集
再开一个窗口,连接其中的一个服务器,使用命令:mongo --port 3000,连接后使用命令 rs.initiate() 初始化,过一会儿,此实例便成为了Primary,可以使用 rs.isMaster()和rs.status()查看对应情况,如下:
接着添加另外两个加入进来,成为Secondary,使用命令rs.add(“host:port”),我的电脑名为 “DESKTOP-1GK6PO0”
2. 配置Config Server 复制集(开两个窗口,分别运行以下两条命令)
mongod --port 27019 --configsvr --replSet rs-conf --dbpath “E:\mongodb\data\data\config0” --logpath “E:\mongodb\data\data\config0.log”
mongod --port 27020 --configsvr --replSet rs-conf --dbpath “E:\mongodb\data\data\config1” --logpath “E:\mongodb\data\data\config1.log”
3. 配置路由服务器 router server
启动mongos运行如下命令:
mongos --configdb rs-conf/DESKTOP-1GK6PO0:27019,DESKTOP-1GK6PO0:27020 --logpath “E:\mongodb\data\data\mongos.log” --port 27018
4. 添加创建的分片
将我们前面创建的分片添加进去,使用命令 mongo --port 27018登录mongos,使用sh.addShard添加分片,使用sh.status()查看分片信息
5. 开启数据库的分片
为了在数据库中使用分片,我们要使用sh.enableSharding()开启数据库的分片,可以看到数据库test开启了分片