mongodb复制集搭建
2016-06-11 01:03
543 查看
环境:centos 6.5、 mongodb 3.2.7
在一台虚拟机中启动三个mongodb服务来模拟
ip:192.168.1.219
端口:27017、27018、27019
27017:配置文件:
27018 配置文件:
27019 配置文件
启动每个实例
如果启动出现以下错误,可能是当前的用户权限不足
ERROR: child process failed, exited with error number 1
全部实例启动完成后,需要进入其中一个实例进行配置
其中设置27018为arbiter节点
进入端口号:27017进行配置
./bin/mongo 127.0.0.1/admin
配置
使用rs.initiate进行初始化
使用rs.status()查看状态
进入各个节点验证,略
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
验证复制集同步
主库插入数据 端口:27017
从库查看数据 端口:27019
从库查询数据需要设置slaveOK为true
查看arbiter节点 端口:27018,由于arbiter节点是仲裁节点,只参与投票,不接收复制的数据,也不能成为primary节点
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
略
2、在使用openssl生成密钥文件
3、将这个密钥文件复制到复制节点上(包括主节点和从节点)
4、在配置文件中开启
auth=true
keyFile = keyfile.dat
5、启动所有实例即可
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
如果需要将某台机器指定为主节点,(例如:将性能最好的服务器作为主节点)
那么需要在节点配置上将其权重设置大于其它节点的权重,参数:priority 默认值是1,因此在指定的节点上设置大于1的权重即可
例如:
将192.168.1.219:27019设置为主节点
将主节点降级为从节点
单位:秒
例如:rs.stepDown(15)
使用spring-data-mongodb 复制集配置
http://blog.csdn.net/u010889990/article/details/42644963
在一台虚拟机中启动三个mongodb服务来模拟
ip:192.168.1.219
端口:27017、27018、27019
27017:配置文件:
port=27017 #配置端口号 dbpath=data #配置数据存放的位置,这里使用相对路径 logpath=log/mongodb.log #配置日志存放的位置 logappend=true #日志使用追加的方式 fork=true #设置在后台运行 replSet=YAOMONGO #配置复制集名称,该名称要在所有的服务器一致
27018 配置文件:
port=27018 #配置端口号 dbpath=data #配置数据存放的位置,这里使用相对路径 logpath=log/mongodb.log #配置日志存放的位置 logappend=true #日志使用追加的方式 fork=true #设置在后台运行 replSet=YAOMONGO #配置复制集名称,该名称要在所有的服务器一致
27019 配置文件
port=27019 #配置端口号 dbpath=data #配置数据存放的位置,这里使用相对路径 logpath=log/mongodb.log #配置日志存放的位置 logappend=true #日志使用追加的方式 fork=true #设置在后台运行 replSet=YAOMONGO #配置复制集名称,该名称要在所有的服务器一致
启动每个实例
如果启动出现以下错误,可能是当前的用户权限不足
ERROR: child process failed, exited with error number 1
全部实例启动完成后,需要进入其中一个实例进行配置
其中设置27018为arbiter节点
进入端口号:27017进行配置
./bin/mongo 127.0.0.1/admin
配置
config = { _id:"YAOMONGO", members:[ {_id:0,host:"192.168.1.219:27017"}, {_id:1,host:"192.168.1.219:27018",arbiterOnly:true}, {_id:2,host:"192.168.1.219:27019"} ] }
使用rs.initiate进行初始化
rs.initiate(config);
使用rs.status()查看状态
进入各个节点验证,略
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
验证复制集同步
主库插入数据 端口:27017
从库查看数据 端口:27019
从库查询数据需要设置slaveOK为true
查看arbiter节点 端口:27018,由于arbiter节点是仲裁节点,只参与投票,不接收复制的数据,也不能成为primary节点
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
复制集开启认证
1、先在没有开启auth的主节点中创建用户略
2、在使用openssl生成密钥文件
openssl rand -base64 64 > keyfile.dat
#生成64字节的密钥文件
chmod 600 keyfile.dat
#建议把密钥文件的权限设置为600(针对启动mongo实例的用户)
3、将这个密钥文件复制到复制节点上(包括主节点和从节点)
4、在配置文件中开启
auth=true
keyFile = keyfile.dat
5、启动所有实例即可
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
如果需要将某台机器指定为主节点,(例如:将性能最好的服务器作为主节点)
那么需要在节点配置上将其权重设置大于其它节点的权重,参数:priority 默认值是1,因此在指定的节点上设置大于1的权重即可
例如:
将192.168.1.219:27019设置为主节点
config = { _id:"YAOMONGO", members:[ {_id:0,host:"192.168.1.219:27017"}, {_id:1,host:"192.168.1.219:27018",arbiterOnly:true}, {_id:2,host:"192.168.1.219:27019",priority:5} ] }
将主节点降级为从节点
rs.
stepDown(stepDownSecs, secondaryCatchUpPeriodSecs)
单位:秒
例如:rs.stepDown(15)
使用spring-data-mongodb 复制集配置
http://blog.csdn.net/u010889990/article/details/42644963
相关文章推荐
- Tornado+Motor Demo API
- Mongodb的副本集节点角色介绍及选举过程浅析
- mongodb 启动错误
- mongodb的连接和开启安全验证
- mongodb概念
- MongoDB server端的启动和添加到服务。
- MongoDB3.2的配置文件介绍。
- MongoDB修改器的使用1
- 用Java开发的MySQL,Oracle,PostgreSQL,mongoDB 数据库web管理工具软件
- Node.js简单操作MongoDB(CRUD)
- 电商之梳理mongodb相关知识---分布式数据库
- MongoDB之索引
- 使用hadoop mapreduce分析mongodb数据:(1)
- 学习MongoDB 十二: MongoDB聚合(Aggregation Pipeline基础篇-下)(四)
- 学习MongoDB 十一: MongoDB聚合(Aggregation Pipeline基础篇上)(三)
- [MongoDB]索引
- 【MongoDB for Java】Java操作MongoDB
- mongoDB 入门指南、示例
- mongoDB 介绍(特点、优点、原理)
- spring中配置mongoDB