文档章节

MongoDB副本集配置好后修改配置

o00o
 o00o
发布于 2017/09/06 18:14
字数 486
阅读 16
收藏 0
点赞 0
评论 0

测试环境

Linux redhat6.5 1台
端口:27017、27018、27019
修改端口为27000、27001、27002

配置

单台服务器设置了三个配置文件(3个端口),模拟三台mongod服务,并配置副本集。

/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/mongo1.conf
/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/mongo2.conf
/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/mongo3.conf

mongo1.conf

port=27017
bind_ip=127.0.0.1,192.168.249.181
pidfilepath=/var/run/mongod/mongod1.pid
dbpath=/usr/local/mongodb/data/mongod1
logpath=/usr/local/mongodb/log/mongod1.log
logappend=true
fork=true
auth=true
replSet=replication/192.168.249.181:27018
nohttpinterface=false

mongo1.conf(修改)

port=27000
bind_ip=127.0.0.1,192.168.249.181
pidfilepath=/var/run/mongod/mongod1.pid
dbpath=/usr/local/mongodb/data/mongod1
logpath=/usr/local/mongodb/log/mongod1.log
logappend=true
fork=true
auth=true
replSet=replication/192.168.249.181:27001
nohttpinterface=false

重启mongod服务

重启mongod服务后,发现副本集状态出现异常:

replication:OTHER>  rs.status()
{
	"state" : 10,
	"stateStr" : "REMOVED",
	"uptime" : 282,
	"optime" : {
		"ts" : Timestamp(1504690040, 1),
		"t" : NumberLong(8)
	},
	"optimeDate" : ISODate("2017-09-06T09:27:20Z"),
	"ok" : 0,
	"errmsg" : "Our replica set config is invalid or we are not a member of it",
	"code" : 93,
	"codeName" : "InvalidReplicaSetConfig"
}

恍然,配置的副本集端口也需要修改:

# 获取副本集配置
replication:OTHER> cfg=rs.conf()
replication:OTHER> printjson(cfg)
# 查看配置节点
replication:OTHER> printjson(cfg.members[0])
# 修改节点端口
replication:OTHER> cfg.members[0].host="192.168.249.181:27000"
replication:OTHER> cfg.members[1].host="192.168.249.181:27001"
replication:OTHER> cfg.members[2].host="192.168.249.181:27002"
# 重新配置
replication:OTHER> rs.reconfig(cfg)    # 可能会报错"errmsg" : "replSetReconfig should only be run on PRIMARY, but my state is REMOVED; use the \"force\" argument to override",
# 报错的话,根据报错信息加强制指令执行
replication:OTHER> rs.reconfig(cfg, {force : true})

查看副本集状态

replication:PRIMARY> rs.status()

replication:PRIMARY> rs.isMaster()
{
	"hosts" : [
		"192.168.249.181:27000",
		"192.168.249.181:27001",
		"192.168.249.181:27002"
	],
	"setName" : "replication",
	"setVersion" : 52478,
	"ismaster" : true,
	"secondary" : false,
	"primary" : "192.168.249.181:27002",
	"me" : "192.168.249.181:27002",
	"electionId" : ObjectId("7fffffff0000000000000009"),
	"lastWrite" : {
		"opTime" : {
			"ts" : Timestamp(1504693178, 1),
			"t" : NumberLong(9)
		},
		"lastWriteDate" : ISODate("2017-09-06T10:19:38Z")
	},
	"maxBsonObjectSize" : 16777216,
	"maxMessageSizeBytes" : 48000000,
	"maxWriteBatchSize" : 1000,
	"localTime" : ISODate("2017-09-06T10:19:46.167Z"),
	"maxWireVersion" : 5,
	"minWireVersion" : 0,
	"readOnly" : false,
	"ok" : 1
}

© 著作权归作者所有

共有 人打赏支持
o00o
粉丝 1
博文 19
码字总数 30599
作品 0
武汉
其他
CentOS7.X安装mongodb-3.4.2

安装mongodb 下载安装mongodb3.4.x 加入环境变量 创建数据目录 修改配置文件 启动关闭mongodb 开机启动mongodb Mongodb集群(cluster) 修改mongodb.conf 启动mongodb 初始化mongodb,启动副本集...

qq2233466866 ⋅ 06/11 ⋅ 0

mongodb 主从配置,带auth验证模式

一 简介说明 主从复制是mongodb最常用的复制方式,也是一个简单的数据库同步备份的集群技术,这种方式很灵活.可用于备份,故障恢复,读扩展等. 最基本的设置方式就是建立一个主节点和一个或多个从...

KerryLi ⋅ 06/04 ⋅ 0

MongoDB · 引擎特性 · journal 与 oplog,究竟谁先写入?

MongoDB journal 与 oplog,谁先写入?最近经常被人问到,本文主要科普一下 MongoDB 里 oplog 以及 journal 这两个概念。 journal journal 是 MongoDB 存储引擎层的概念,目前 MongoDB主要支...

db匠 ⋅ 05/22 ⋅ 0

一条命令搞垮MongoDB实例

一条命令搞垮MongoDB实例 背景 Part1:写在最前 在副本集架构中,我们会经常通过rs.add(),rs.remove()命令来调整后台数据库架构,在本案例中,我们异常的触发到了一个MongoDB的BUG,并尽快的找...

dbapower ⋅ 05/07 ⋅ 0

如何在Ubuntu上开启MongoDB的IP Security

MongoDB3.6的默认配置会拒绝未授权的链接对公共网络的访问,从而保护数据收到外部威胁。MongoDB只会监听本地链接,除非添加规则允许监听其他地址。本教程会简明的展示如何允许外部IP地址连接...

linux-tao ⋅ 06/05 ⋅ 0

centos7部署Mongodb复制集结合分片(超详细)

Mongodb复制集结合分片 重点:概述、原理、实施案例 一、概述: 概述: 分片(sharding)是指将数据库拆分,将其分散在不同的机器上的过程。分片集群(sharded cluster)是一种水平扩展数据库...

壹休哥 ⋅ 06/14 ⋅ 0

centos7.3yum安装mongodb3.4

最小化安装centos7.3 服务器规划(说明: 配置静态IP请查看关于上篇环境配置的博客) 安装mongodb3.x 创建yum源 修改yum源 安装MongoDB软件包和相关工具 网速较慢, 比较耗时, 推荐tar包安装, 下...

paascloud ⋅ 2017/09/07 ⋅ 0

MongoDB 无法启动,WiredTiger 如何恢复数据(二)?

之前写过一篇MongoDB 无法启动,如何恢复数据的文章,介绍了几种从无法启动的 MongoDB 节点恢复数据的方法,主要包括: 如果配置了副本集多节点,则从其他节点恢复(强烈建议重要的数据至少要...

张友东 ⋅ 04/30 ⋅ 0

Centos7下安装mongodb

MongoDB由C++语言编写,是一个基于分布式文件存储的数据库,目的在于为web应用提供可扩展的高性能数据存储解决方案。它是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功...

goldfishe ⋅ 05/07 ⋅ 0

MongoDB 用户名密码登录

Mongodb enable authentication MongoDB 默认直接连接,无须身份验证,如果当前机器可以公网访问,且不注意Mongodb 端口(默认 27017)的开放状态,那么Mongodb就会产生安全风险,被利用此配...

kimoCHG ⋅ 2017/01/07 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

从 Confluence 5.3 及其早期版本中恢复空间

如果你需要从 Confluence 5.3 及其早期版本中的导出文件恢复到晚于 Confluence 5.3 的 Confluence 中的话。你可以使用临时的 Confluence 空间安装,然后将这个 Confluence 安装实例升级到你现...

honeymose ⋅ 11分钟前 ⋅ 0

用ZBLOG2.3博客写读书笔记网站能创造今日头条的辉煌吗?

最近两年,著名的自媒体网站今日头条可以说是火得一塌糊涂,虽然从目前来看也遇到了一点瓶颈,毕竟发展到了一定的规模,继续增长就更加难了,但如今的今日头条规模和流量已经非常大了。 我们...

原创小博客 ⋅ 今天 ⋅ 0

MyBatis四大核心概念

本文讲解 MyBatis 四大核心概念(SqlSessionFactoryBuilder、SqlSessionFactory、SqlSession、Mapper)。 MyBatis 作为互联网数据库映射工具界的“上古神器”,训有四大“神兽”,谓之:Sql...

waylau ⋅ 今天 ⋅ 0

以太坊java开发包web3j简介

web3j(org.web3j)是Java版本的以太坊JSON RPC接口协议封装实现,如果需要将你的Java应用或安卓应用接入以太坊,或者希望用java开发一个钱包应用,那么用web3j就对了。 web3j的功能相当完整...

汇智网教程 ⋅ 今天 ⋅ 0

2个线程交替打印100以内的数字

重点提示: 线程的本质上只是一个壳子,真正的逻辑其实在“竞态条件”中。 举个例子,比如本题中的打印,那么在竞态条件中,我只需要一个方法即可; 假如我的需求是2个线程,一个+1,一个-1,...

Germmy ⋅ 今天 ⋅ 0

Springboot2 之 Spring Data Redis 实现消息队列——发布/订阅模式

一般来说,消息队列有两种场景,一种是发布者订阅者模式,一种是生产者消费者模式,这里利用redis消息“发布/订阅”来简单实现订阅者模式。 实现之前先过过 redis 发布订阅的一些基础概念和操...

Simonton ⋅ 今天 ⋅ 0

error:Could not find gradle

一.更新Android Studio后打开Project,报如下错误: Error: Could not find com.android.tools.build:gradle:2.2.1. Searched in the following locations: file:/D:/software/android/andro......

Yao--靠自己 ⋅ 昨天 ⋅ 0

Spring boot 项目打包及引入本地jar包

Spring Boot 项目打包以及引入本地Jar包 [TOC] 上篇文章提到 Maven 项目添加本地jar包的三种方式 ,本篇文章记录下在实际项目中的应用。 spring boot 打包方式 我们知道,传统应用可以将程序...

Os_yxguang ⋅ 昨天 ⋅ 0

常见数据结构(二)-树(二叉树,红黑树,B树)

本文介绍数据结构中几种常见的树:二分查找树,2-3树,红黑树,B树 写在前面 本文所有图片均截图自coursera上普林斯顿的课程《Algorithms, Part I》中的Slides 相关命题的证明可参考《算法(第...

浮躁的码农 ⋅ 昨天 ⋅ 0

android -------- 混淆打包报错 (warning - InnerClass ...)

最近做Android混淆打包遇到一些问题,Android Sdutio 3.1 版本打包的 错误如下: Android studio warning - InnerClass annotations are missing corresponding EnclosingMember annotation......

切切歆语 ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部