50 lines
1.7 KiB
Markdown
50 lines
1.7 KiB
Markdown
---
|
|
title: 6.1、快速搭建复制集
|
|
date: 2018-2-11 19:47:03
|
|
tags:
|
|
- 数据库
|
|
- MongoDB
|
|
- 集群
|
|
categories:
|
|
- MongoDB
|
|
---
|
|
|
|
在一个复制集当中 , 每个节点都需要具备独立的进程 , 所以要分别进行配置
|
|
这里需要用到几个重要的配置项
|
|
<!-- more -->
|
|
+ `replSet` - 复制集的名称 , 不同节点设置的复制集名称必须一致 , 才能保证这些节点被加入到同一个复制集当中
|
|
+ `oplogSize` - 复制集的缓存大小 , 单位MB
|
|
( 不同的节点之间是通过oplog进行同步的 )
|
|
|
|
当然 , 如果要在一台机器上模拟一个复制集 , 对于每个节点的实例需要配置不同的端口号
|
|
|
|
步骤
|
|
1. 编写配置文件 , 并启动多个实例
|
|
2. 连接其中一个节点 , 执行配置
|
|
```javascript
|
|
config = {
|
|
_id:"TestReplSet",//复制集的唯一标识
|
|
members:[
|
|
//复制集当中的成员
|
|
{_id:0,host:"127.0.0.1:28001"},
|
|
{_id:1,host:"127.0.0.1:28002"},
|
|
{_id:2,host:"127.0.0.1:28003",
|
|
arbiterOnly:true
|
|
//置为仲裁节点
|
|
}
|
|
]
|
|
}
|
|
```
|
|
这里是相当于定义了一个名为config的全局变量
|
|
**其他的节点配置项**
|
|
> + `priority` - 值为整数 ( 0~1000 ) , 默认是1 , 代表这个节点的权重 , 也就是成为主节点的机会 , 如果是0则永远不会成为主节点
|
|
> + `hidden` - 是否是隐藏节点 , true/false , 如果设置为true , 那么priority必须是0
|
|
> + `vote` - 整数值 , 该节点是否具有投票权 , 值为0或1
|
|
> + `slaveDelay` - 整数值 , 延迟时间复制数据 , 单位是秒 ( 对于一些误操作 , 可以利用延时挽回数据的损失 )
|
|
|
|
|
|
3. 执行复制集的初始化
|
|
```javascript
|
|
rs.initiate(config)
|
|
```
|
|
稍等片刻即可完成复制集的搭建了 |