olga 发表于 2017-6-26 06:54:29

mongodb 3.4 学习 (四)分片

# 配置分片  # 允许分片的数据库
  sh.enableSharding('app')
  # 为用做shard key的字段建立索引,实际中可以用uuid字段
  use app
  db.demo.createIndex({id: 1})
  {
  "raw" : {
  "shard1/10.0.70.104:27021,10.0.70.104:27022,10.0.70.104:27023" : {
  "createdCollectionAutomatically" : false,
  "numIndexesBefore" : 1,
  "numIndexesAfter" : 2,
  "ok" : 1,
  "$gleStats" : {
  "lastOpTime" : {
  "ts" : Timestamp(1495675335, 1),
  "t" : NumberLong(1)
  },
  "electionId" : ObjectId("7fffffff0000000000000001")
  }
  }
  },
  "ok" : 1
  }
  # 允许分片的collection,指定shard key的字段

  sh.shardCollection('app.demo', {>  { "collectionsharded" : "app.demo", "ok" : 1 }
  # 插入数据
  for (var i = 1; i < 10000; i++) db.demo.insert({id: i, name: 'ken'})
  WriteResult({ "nInserted" : 1 })
  # 查看状态,可以看到db与collection的分片状态
  sh.status()
  --- Sharding Status ---
  sharding version: {
  "_id" : 1,
  "minCompatibleVersion" : 5,
  "currentVersion" : 6,
  "clusterId" : ObjectId("59261bca37ceff575b36ef09")
  }
  shards:
  {"_id" : "shard1","host" : "shard1/10.0.70.104:27021,10.0.70.104:27022,10.0.70.104:27023","state" : 1 }
  {"_id" : "shard2","host" : "shard2/10.0.70.105:27021,10.0.70.105:27022,10.0.70.105:27023","state" : 1 }
  active mongoses:
  "3.4.4" : 1
  autosplit:
  Currently enabled: yes
  balancer:
  Currently enabled:yes
  Currently running:no
  Balancer lock taken at Thu May 25 2017 07:48:42 GMT+0800 (CST) by ConfigServer:Balancer
  Failed balancer rounds in last 5 attempts:0
  Migration Results for the last 24 hours:
  1 : Success
  databases:
  {"_id" : "app","primary" : "shard1","partitioned" : true }
  app.demo
  shard key: { "id" : "hashed" }
  unique: false
  balancing: true
  chunks:
  shard12
  shard22
  { "id" : { "$minKey" : 1 } } -->> { "id" : NumberLong("-4611686018427387902") } on : shard1 Timestamp(2, 2)
  { "id" : NumberLong("-4611686018427387902") } -->> { "id" : NumberLong(0) } on : shard1 Timestamp(2, 3)
  { "id" : NumberLong(0) } -->> { "id" : NumberLong("4611686018427387902") } on : shard2 Timestamp(2, 4)
  { "id" : NumberLong("4611686018427387902") } -->> { "id" : { "$maxKey" : 1 } } on : shard2 Timestamp(2, 5)
页: [1]
查看完整版本: mongodb 3.4 学习 (四)分片