千家信息网

mongodb shard

发表于:2024-09-21 作者:千家信息网编辑
千家信息网最后更新 2024年09月21日,serverA:172.16.200.200/data/mongodb/db/{shard1_200,shard2_200,shard3_200,config}/data1/logs/mongodb/
千家信息网最后更新 2024年09月21日mongodb shardserverA:172.16.200.200
/data/mongodb/db/{shard1_200,shard2_200,shard3_200,config}
/data1/logs/mongodb/
serverB:172.16.200.201
/data/mongodb/db/{shard1_201,shard2_201,shard3_201,config}
/data1/logs/mongodb/
serverC:172.16.200.202
/data/mongodb/db/{shard1_202,shard2_202,shard3_202,config}
/data1/logs/mongodb/


serverA:./mongod --shardsvr --replSet shard1 --port 29001 --dbpath=/data/mongodb/db/shard1_200/ --oplogSize 10240 --logpath=/data1/logs/mongodb/shard1_200.log --logappend --fork --nohttpinterface -directoryperdb

serverB:
./mongod --shardsvr --replSet shard1 --port 29001 --dbpath=/data/mongodb/db/shard1_201/ --oplogSize 10240 --logpath=/data1/logs/mongodb/shard1_201.log --logappend --fork --nohttpinterface --directoryperdbserverC:

./mongod --shardsvr --replSet shard1 --port 29001 --dbpath=/data/mongodb/db/shard1_202/ --oplogSize 10240 --logpath=/data1/logs/mongodb/shard1_202.log --logappend --fork --nohttpinterface -directoryperdb
登陆mongo./mongo --port 29001> config = {_id: 'shard1', members: [
... {_id: 0, host: '172.16.200.200:29001',priority:1},
... {_id: 1, host: '172.16.200.201:29001',priority:0},
... {_id: 2, host: '172.16.200.202:29001',arbiterOnly:true}]};
{
"_id" : "shard1",
"members" : [
{
"_id" : 0,
"host" : "172.16.200.200:29001",
"priority" : 1
},
{
"_id" : 1,
"host" : "172.16.200.201:29001",
"priority" : 0
},
{
"_id" : 2,
"host" : "172.16.200.202:29001",
"arbiterOnly" : true
}
]
}
> rs.initiate(config);
{
"info" : "Config now saved locally. Should come online in about a minute.",
"ok" : 1
}
>
shard1:SECONDARY>
shard1:SECONDARY> serverA:./mongod --shardsvr --replSet shard2 --port 29002 --dbpath=/data/mongodb/db/shard2_200/ --oplogSize 10240 --logpath=/data1/logs/mongodb/shard2_201.log --logappend --fork --nohttpinterface --directoryperdbserverB:
./mongod --shardsvr --replSet shard2 --port 29002 --dbpath=/data/mongodb/db/shard2_201/ --oplogSize 10240 --logpath=/data1/logs/mongodb/shard2_201.log --logappend --fork --nohttpinterface --directoryperdbserverC:./mongod --shardsvr --replSet shard2 --port 29002 --dbpath=/data/mongodb/db/shard2_202 --oplogSize 10240 --logpath=/data1/logs/mongodb/shard2_202.log --logappend --fork --nohttpinterface --directoryperdb登录mong./mongo --port 29002[root@serverA bin]# ./mongo --port 29002
MongoDB shell version: 2.6.0
connecting to: 127.0.0.1:29002/test
> config = {_id: 'shard2', members: [
... {_id: 0, host: '172.16.200.200:29002',priority:1},
... {_id: 1, host: '172.16.200.201:29002',priority:0},
... {_id: 2, host: '172.16.200.202:29002',arbiterOnly:true}]};
{
"_id" : "shard2",
"members" : [
{
"_id" : 0,
"host" : "172.16.200.200:29002",
"priority" : 1
},
{
"_id" : 1,
"host" : "172.16.200.201:29002",
"priority" : 0
},
{
"_id" : 2,
"host" : "172.16.200.202:29002",
"arbiterOnly" : true
}
]
}
> rs.initiate(config);
{
"info" : "Config now saved locally. Should come online in about a minute.",
"ok" : 1
}
>
shard2:SECONDARY>shard2:PRIMARY> serverA:./mongod --shardsvr --replSet shard3 --port 29003 --dbpath=/data/mongodb/db/shard3_200/ --oplogSize 10240 --logpath=/data1/logs/mongodb/shard3_200.log --logappend --fork --nohttpinterface --directoryperdb
serverB:./mongod --shardsvr --replSet shard3 --port 29003 --dbpath=/data/mongodb/db/shard3_201/ --oplogSize 10240 --logpath=/data1/logs/mongodb/shard3_201.log --logappend --fork --nohttpinterface --directoryperdbserverC:./mongod --shardsvr --replSet shard3 --port 29003 --dbpath=/data/mongodb/db/shard3_202/ --oplogSize 10240 --logpath=/data1/logs/mongodb/shard3_202.log --logappend --fork --nohttpinterface --directoryperdb[root@serverA bin]# ./mongo --port 29003
MongoDB shell version: 2.6.0
connecting to: 127.0.0.1:29003/test
> config = {_id: 'shard3', members: [
... {_id: 0, host: '172.16.200.200:29003',priority:1},
... {_id: 1, host: '172.16.200.201:29003',priority:0},
... {_id: 2, host: '172.16.200.202:29003',arbiterOnly:true}]};
{
"_id" : "shard3",
"members" : [
{
"_id" : 0,
"host" : "172.16.200.200:29003",
"priority" : 1
},
{
"_id" : 1,
"host" : "172.16.200.201:29003",
"priority" : 0
},
{
"_id" : 2,
"host" : "172.16.200.202:29003",
"arbiterOnly" : true
}
]
}
> rs.initiate(config);
{
"info" : "Config now saved locally. Should come online in about a minute.",
"ok" : 1
}
>
shard3:SECONDARY>
shard3:SECONDARY>
shard3:SECONDARY>
shard3:PRIMARY> 启动configserverA:./mongod --configsvr --dbpath=/data/mongodb/db/config/ --port 29000 --logpath=/data1/logs/mongodb/config_200.log --logappend --fork --nohttpinterface --directoryperdb
serverB:./mongod --configsvr --dbpath=/data/mongodb/db/config/ --port 29000 --logpath=/data1/logs/mongodb/config_201.log --logappend --fork --nohttpinterface --directoryperdbserverC:./mongod --configsvr --dbpath=/data/mongodb/db/config/ --port 29000 --logpath=/data1/logs/mongodb/config_202.log --logappend --fork --nohttpinterface --directoryperdb启动mongosserverA:
./mongos --configdb 172.16.200.200:29000,172.16.200.201:29000,172.16.200.202:29000 --port 27001 --chunkSize 8 --logpath=/data1/logs/mongodb/mongos_200.log --logappend --fork --nohttpinterface
serverB:./mongos --configdb 172.16.200.200:29000,172.16.200.201:29000,172.16.200.202:29000 --port 27001 --chunkSize 8 --logpath=/data1/logs/mongodb/mongos_201.log --logappend --fork --nohttpinterfaceserverC:./mongos --configdb 172.16.200.200:29000,172.16.200.201:29000,172.16.200.202:29000 --port 27001 --chunkSize 8 --logpath=/data1/logs/mongodb/mongos_202.log --logappend --fork --nohttpinterface
配置sharding ./mono --port 27001mongos> use admin
switched to db admindb.runCommand( { addshard:"shard1/172.16.200.200:29001,172.16.200.201:29001,172.16.200.202:29001",name:"s1"} );
{ "shardAdded" : "s1", "ok" : 1 }
mongos> db.runCommand( { addshard:"shard2/172.16.200.201:29002,172.16.200.202:29002,172.16.200.200:29002",name:"s2"} );
{ "shardAdded" : "s2", "ok" : 1 }
mongos> db.runCommand( { addshard:"shard3/172.16.200.202:29003,172.16.200.200:29003,172.16.200.201:29003",name:"s3"} )
{ "shardAdded" : "s3", "ok" : 1 }
mongos> [root@serverA bin]# ./mongo --port 27001
MongoDB shell version: 2.6.0
connecting to: 127.0.0.1:27001/test
mongos>
mongos> show dbs
admin 0.016GB
config 0.016GB
congig (empty)mongos> use configswitched to db config
mongos> show collections
changelog
chunks
collections
databases
lockpings
locks
mongos
settings
shards
system.indexes
tags
version





0