> 데이터 베이스 > MySQL 튜토리얼 > MongoDB高级----复制与分片

MongoDB高级----复制与分片

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
풀어 주다: 2016-06-07 17:03:53
원래의
751명이 탐색했습니다.

MongoDB提供了Replica pairs模式启动数据库,以这种方式启动后,数据库会自动协商谁是master谁是slave。一旦一个数据库服务器断电

MongoDB提供了Replica pairs模式启动数据库,以这种方式启动后,数据库会自动协商谁是master谁是slave。一旦一个数据库服务器断电,另外一个会自动接管,并从那一刻起为master,万一另一个将来也出错了,那么master状态会转回第一个服务器。

MongoDB包括一个自动分片模块”mongos“ 从而可以构建一个大的水平可扩展的数据库集群,,可以动态的添加服务器,自动建立一个水平扩展的数据库集群系统,将数据库分表存储在sharding的各个节点上

这里我使用3台服务器做测试。

分别为

10.X.X.21.163 

10.X.X.21.164

10.X.X.228

................. (如果有服务没起来 ,根据经验可能是你Data下的文件锁问题,或者是命名不对)

准备工作:

每台机器先创建数据目录 

Server 1

  • ^_^[root@:/usr/local/mongodb]#mkdir -p data/shard11  
  • ^_^[root@:/usr/local/mongodb]#mkdir -p data/shard21  
  • Server 2

  • ^_^[root@:/usr/local/mongodb]#mkdir -p data/shard12  
  • ^_^[root@:/usr/local/mongodb]#mkdir -p data/shard22  
  • Server 3

  • ^_^[root@:/usr/local/mongodb]#mkdir -p data/shard13  
  • ^_^[root@:/usr/local/mongodb]#mkdir -p data/shard23  
  • 然后针对每个服务器进行Shard1 Replica Sets:

    Server1:

  • ./mongod --shardsvr --replSet shard1 --port 27017 --dbpath ../data/shard11 --oplogSize 100 --logpath ../data/shard11.log --logappend --fork.  
  • Server2:

  • ./mongod --shardsvr --replSet shard1 --port 27017 --dbpath ../data/shard12 --oplogSize 100 --logpath ../data/shard12.log --logappend --fork.  
  • Server3:

  • ./mongod --shardsvr --replSet shard1 --port 27017 --dbpath ../data/shard13 --oplogSize 100 --logpath ../data/shard13.log --logappend --fork.  
  • 初始化Replica set:

  • rs.initiate(config);  
  • 再给Shard2配置Replica Sets 

    Server1:

  • ./mongod --shardsvr --replSet shard2 --port 27018 --dbpath ../data/shard21 --oplogSize 100 --logpath ../data/shard21.log --logappend --fork.  
  • Server2:

  • ./mongod --shardsvr --replSet shard2 --port 27018 --dbpath ../data/shard22 --oplogSize 100 --logpath ../data/shard22.log --logappend --fork.  
  • Server3:

  • ./mongod --shardsvr --replSet shard2 --port 27018 --dbpath ../data/shard23 --oplogSize 100 --logpath ../data/shard23.log --logappend --fork.  
  • 经过第一次初始化后运行客户端会出现:


    如果要用27018的 需要指定


    ./mongo 10.X.X.228:27018

    linux

    관련 라벨:
    본 웹사이트의 성명
    본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
    인기 튜토리얼
    더>
    최신 다운로드
    더>
    웹 효과
    웹사이트 소스 코드
    웹사이트 자료
    프론트엔드 템플릿