MongoDB(8)集群技术:副本集 & 分片

MongoDB 入门专栏

http://blog.csdn.net/column/details/19681.html


MongoDB 副本集


MongoDB 副本集是将数据同步在多个服务器的过程, 复制提供了数据的冗余备份,并在多个服务器上存储数据副本,提高了数据的可用性, 并可以保证数据的安全性,同时 还允许从硬件故障和服务中断中恢复数据。

mongodb 的复制至少需要两个节点。其中一个是主节点,负责处理客户端请求,其余的都是从节点,负责复制主节点上的数据,主节点记录在其上的所有操作oplog,从节点定期轮询主节点获取这些操作,然后对自己的数据副本执行这些操作,从而保证从节点的数据与主节点一致。


这样一个数据冗余系统中,主节点和所有从节点组成一个副本集,mongodb 的副本集拥有以下特点:
  • N 个节点的集群
  • 任何节点可作为主节点
  • 所有写入操作都在主节点上
  • 自动故障转移
  • 自动恢复

mongodb 副本集的设置

副本集的启动,和从节点加入到副本集的操作,只能在主节点上完成,但是主节点随时否可以转移到其他从节点;

启动一个副本集系统的基本步骤如下:
  • 在主节点启动 mongod 服务时,可以使用 --replSet 启动副本集,同时指定副本集名称;
  • 连接主节点,初始化新的副本集;
  • 启动各个从节点 mongod 服务,同时这些从从节点也创建和必须初始化副本集,使用同一个副本集 id;
  • 在主节点将这些从节点加入主节点副本集;

以下演示 3 个 mongodb 创建一个副本集系统
1)主节点启动 mongod 服务:
 
# 启动 mongodb 服务,设置副本集 rs0
$ mongod --port 27017 --dbpath "/var/run/mongodb/data" --replSet rs0 
2) 2 个从节点分别启动 mongod 服务
 
$ mongod --port 27017 --dbpath 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值