前提: 分片服务器不设置从服务和均衡服务,只有主服务器;
当前测试为所有服务器均在同一台物理机上。
1.测试环境:192.168.1.55.
2.测试模式:单机。
3.服务:分片服务器1:192.168.1.55:10001
分片服务器2:192.168.1.55:10002
配置服务器: 192.168.1.55:20001
路由服务器: 192.168.1.55:30001
4.目录设置:
分片服务器1:/usr/mongodbtest/sd1,内含目录data,log目录,配置文件
分片服务器2:/usr/mongodbtest/sd2,内含目录data,log目录,配置文件
配置服务器: /usr/mongodbtest/cfg1,内含目录data,log目录,配置文件
路由服务器: /usr/mongodbtest/rout,内含log文件
5.配置文件:
分片服务器1:
systemLog:
destination: file
logAppend: true
path: /usr/mongodbtest/sd1/log/mg.log
storage:
dbPath: /usr/mongodbtest/sd1/data
journal:
enabled: true engine: wiredTiger
processManagement:
fork: true pidFilePath: /usr/mongodbtest/sd1/mongod.pid
net:
port: 10001 分片服务器2: 类似1.
配置服务器: 多2个参数: replication:
replSetName: set61
sharding:
clusterRole: configsvr
配置服务器: 暂用命令方式,见第8步。
6.启动分片和配置服务器:
> ./mongod --config 实际的配置文件路径
7.初始化配置服务器:
> ./mongo 192.168.1.55:20001
>rs.initiate({
_id:"set61",
configsvr: true,
members:[ { _id: 0, host:"192.168.1.55:20001"} //可设置多台
]
})
8. 启动路由服务器:
./mongos --port 30001 --configdb set61/192.168.1.55:20001 --logappend -- logpath
/usr/mongodbtest/rout/rt.log --fork
9. 增加分片
> ./mongo 192.168.1.55:30001
mongos> sh.addShard("192.168.1.55:10001");
mongos> sh.addShard("192.168.1.55:10002");
10.激活分片
> ./mongo 192.168.1.55:30001
mongos>sh.enableSharding("你的数据库")
11.增加片键
sh.shardCollection("gwgps.location", { "hostid": 1})
12.增加索引,插入数据等等步骤。