mongod -f /home/mongodb/db27017/mongodb27017.conf mongod -f /home/mongodb/db27018/mongodb27018.conf mongod -f /home/mongodb/db27019/mongodb27019.conf
配置文件以下:mongodb
verbose = true #日誌信息 vvvv = true #日誌的級別 logpath=/home/mongodb/db27019/log/mongodb.log #日誌文件 logappend=true #設置文件記錄格式TRUE爲追加,false爲覆蓋p port = 27019 #指定端口號 maxConns = 2000 #最大連接數,默認狀況是根據系統限制最大不超過2W pidfilepath =/home/mongodb/db27019/tmp/mongo.pid #進程ID,沒有指定則啓動時候就沒有PID文件 nounixsocket = false #當設置爲true時,不會生成socket文件 unixSocketPrefix =/home/mongodb/db27019/tmp #套接字文件路徑,默認/tmp fork = true #後臺運行的守護進程模式 dbpath=/home/mongodb/db27019/data #數據存放目錄 noprealloc = false #預分配方式來保證寫入性能,true會帶來性能降低 nssize = 16 #命名空間默認大小16M,最大2G #慢日誌 profile = 1 #0 關。無分析1僅包括慢操做2包括全部操做。 slowms = 200 #大於200ms的日誌將會被記錄下來 replSet=sharingmxq configsvr=true
mongo use admin rs.initiate( { _id: "sharingmxq", configsvr: true, members: [ { _id : 0, host : "localhost:27017" }, { _id : 1, host : "localhost:27018" }, { _id : 2, host : "localhost:27019" } ] } )
3:建立分片的複製集數據庫
[root@mxqmongodb2 mongodb]# mkdir -p /home/mongodb/db37017/data [root@mxqmongodb2 mongodb]# mkdir -p /home/mongodb/db37017/tmp [root@mxqmongodb2 mongodb]# mkdir -p /home/mongodb/db37017/log [root@mxqmongodb2 mongodb]# mkdir -p /home/mongodb/db37017/key [root@mxqmongodb2 mongodb]# mkdir -p /home/mongodb/db37018/data [root@mxqmongodb2 mongodb]# mkdir -p /home/mongodb/db37018/tmp [root@mxqmongodb2 mongodb]# mkdir -p /home/mongodb/db37018/log [root@mxqmongodb2 mongodb]# mkdir -p /home/mongodb/db37018/key [root@mxqmongodb2 mongodb]# mkdir -p /home/mongodb/db37019/key [root@mxqmongodb2 mongodb]# mkdir -p /home/mongodb/db37019/log [root@mxqmongodb2 mongodb]# mkdir -p /home/mongodb/db37019/tmp [root@mxqmongodb2 mongodb]# mkdir -p /home/mongodb/db37019/data
啓動:服務器
mongod -f /home/mongodb/db37017/mongodb37017.conf mongod -f /home/mongodb/db37018/mongodb37018.conf mongod -f /home/mongodb/db37019/mongodb37019.conf
要注意一點,若是是添加分片複製集的話。每個分片要指定不一樣的replSet,而後進行初始化。把一個複製集當成是每個單機節點就行了,可是添加分片的時候必須指定的是masterapp
mongos --configdb "sharingmxq"/localhost:27017,localhost:27018,localhost:27019 --port=30000
而後添加分片節點:socket
use admin mongos> sh.addShard('localhost:37017') { "shardAdded" : "shard0000", "ok" : 1 } mongos> sh.addShard('localhost:37018') { "shardAdded" : "shard0001", "ok" : 1 } mongos> sh.addShard('localhost:37019') { "shardAdded" : "shard0002", "ok" : 1 }
若是三個分片節點使用的是複製集的話就要用如下的方式添加:性能
mongos> sh.addShard( "sharingmxq/localhost:37017") { "shardAdded" : "sharingmxq", "ok" : 1 } mongos> sh.addShard( "sharingmxq/localhost:37018") { "shardAdded" : "sharingmxq", "ok" : 1 } mongos> sh.addShard( "sharingmxq/localhost:37019") { "shardAdded" : "sharingmxq", "ok" : 1 }
5:分片的配置spa
sh.shardCollection("maxiangqian.maxiangqian", { 'id':1} ) sh.shardCollection('aedata.ac01_test',{'id':1,'idcard':1})
6:驗證分片是否完成unix
mongos --port=30000 use maxiangqian for (var i = 1; i <= 100000; i++) db.maxiangqian.save({id:i,"test1":"testval1"});
登陸各個分片服務器進行驗證:日誌