广告
返回顶部
首页 > 资讯 > 数据库 >mongodb副本集维护
  • 757
分享到

mongodb副本集维护

2024-04-02 19:04:59 757人浏览 独家记忆
摘要

一、概述mongoDB副本集维护主要工作:1、查看副本集状态(集群状态、同步延迟、单个库的运行状态monGostate)2、增删节点、停节点shutdownmongodb副本集集群同步机制数据复制的目的是使

一、概述

mongoDB副本集维护主要工作:

1、查看副本集状态(集群状态、同步延迟、单个库的运行状态monGostate)

2、增删节点、停节点shutdown


mongodb副本集集群同步机制

  1. 数据复制的目的是使数据得到最大的可用性,冗余,避免单点故障。

  2. 副本集中同一时刻只有一台服务器是可以写的,primary主库上写,从库同步数据

  3. 副本集主从复制也是异步同步的过程。slave从primary上获取日志,然后在自己身上完全顺序的执行日志记录的操作(该日志不记录查询操作,只记录更新操作)。被同步的日志就是local库中的oplog.rs表,这个表占空间比较大,磁盘大小5%。启动参数设置oplog.rs的大小:--oplogSize 1000,单位M。生产环境中建议设置大一些,防止无法同步情况发生。


二、查看集群状态

1.rs.status()

mongodb副本集维护

2.db.printSlaveReplicationInfo()

查看主从数据库延迟时间

mongodb副本集维护


3.mongodb监控工具- mongostat

mongodb副本集维护

3.1 如果发现DB突然变慢或者有其他问题,首先mongostat查看状态

mongostat -uxx -pyy -rowcount 12 300
mongostat -uxx -pyy -N 12 300
    ##每300秒输出一次DB状态,共输出12次


3.2 输出参数说明

inserts/s    每秒插入次数

query/s      每秒查询次数

update/s     每秒更新次数

delete/s     每秒删除次数

getmore/s    每秒执行getmore次数,查询时游标(cursor)的getmore操作,用处不大

command/s    每秒命令数,比以上插入、查找、更新、删除的综合还多,还包含了别的命令。比如批量插入,只认为一条命令,意义不大。

flushes/s    每秒执行fsync,将数据写入磁盘的次数。一般都是0,刷如磁盘时是1,可以通过两个1之间的间隔时间,判断多久刷新一次数据到磁盘。flush开销很大,如股票频繁刷新,可能有问题。

mapped/s     所有的被nmap的数据量,单位是MB

vsize        虚拟内存使用量,单位MB

res          物理内存使用量,单位MB。这个和top看到的状态一样,mapped/vsize一般不会有大变动,res会慢慢上升,如果res经常突然下降,查查是不是有别的程序狂吃内存。

faults/s     每秒访问失败数(只有linux有),数据被交换出物理内存,放入swap,如果经常不为0,就是服务器内存太小,造成频繁swap写入,此时要加大内存。

locked db %   被的时间百分比,尽量控制在50%以下。这个值过大(经常超过10%,可能出问题)

idx miss %    非常重要的参数,索引不命中所占百分比。正常情况下,查询都应该通过索引,也就是idx miss为0,如果太高的话就是索引太少了

qr|qw        queue lengths for clients waiting (read|write)客户端过来的读写请求的长度。

ar|aw        active clients(read|write)活跃的客户端过来的读写请求。即总共的读写请求。

             PS:当mongdb接收太多命令,而数据库被锁住无法执行完成,就会将命令加入到队列。都为0,表示mongodb毫无压力,高并发时,队列值会升高,表示DB的处理速度不及请求速度。看下是否有开销很大的慢查询。如果查询一切正常,确实负载很大,则考虑加服务器了。

net In/Out   网络带宽压力,一般网络不会成为mongdb瓶颈。

conn         当前连接数

set          副本集集群名称

repl         当前库在集群中的状态。PRI-master,SEC-second,REC-recovering,UNK-unkown

time         时间戳


 

4.web控制台

mongodb自带WEB控制台,默认和数据服务一起开启。默认端口28017(数据端口27017基础上+1000)

mongodb副本集维护

状态页显示信息:

4.1 当前db的所有连接

4.2 各个数据库dbs和collection的访问统计,包括reads/writes/queries/getmores/inserts/updates/removes

4.3 写锁的状态

4.4 日志文件的最后几百行

4.5 最上面两行,mongodb状态查询的其他命令



5.获取mongodb当前正在执行的操作db.currentOp()

>db.currentOp()
>{ "opid" : "shard3:466404288", "active" : false, "waitingForLock" : false, "op" : "query", "ns" : "sd.usersEmails", "query" : { }, "client_s" : "10.121.13.8:34473", "desc" : "conn" }

5.1 杀死执行时间过长的命令

>db.killOp("shard3:466404288")


6.MongoDB监控服务MongoDB Monitoring Service(MMS)

mongodb厂商提供的监控服务,可在网页和Andriod客户端查看

mongodb副本集维护






您可能感兴趣的文档:

--结束END--

本文标题: mongodb副本集维护

本文链接: https://www.lsjlt.com/news/43047.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • mongodb副本集维护
    一、概述mongodb副本集维护主要工作:1、查看副本集状态(集群状态、同步延迟、单个库的运行状态mongostate)2、增删节点、停节点shutdownmongodb副本集集群同步机制数据复制的目的是使...
    99+
    2022-10-18
  • mongodb 副本集的维护(1)
    一、修改副本集中各成员的优先级:shard1:PRIMARY> conf=rs.conf(){"_id" : "shard1","version" : 3,"protocolVersion" : Nu...
    99+
    2022-10-18
  • mongodb 副本集
    系统:centos6.5IP:10.19.21.244 主节点 10.19.21.245 备节点 10.19.21.248 仲裁点不只是主节点、副本节点、仲裁节点,还有Secondary-Only、Hidd...
    99+
    2022-10-18
  • mongodb副本集
           其实mongodb也可以做主从机制,mongodb一主一从类似mysql,但是slave在架构中为只读,并且主机宕机后从不...
    99+
    2022-10-18
  • MongoDB日常运维-04副本集搭建
    MongoDB日常运维-04副本集搭建  一:MongoDB常用命令汇总 二:MongoDB安装 三:MongoDB主从复制搭建 四:MongoDB副本集搭建 ...
    99+
    2022-10-18
  • mongodb集群-副本集(CSRS)
    一、概述(1)MongoDB复制是将数据同步在多个服务器的过程。(2)复制提供了数据的冗余备份,并在多个服务器上存储数据副本,提高了数据的可用性, 并可以保证数据的安全性。(3)复制还允许您从硬件故障和服务...
    99+
    2022-10-18
  • MongoDB Replica Set 副本集
    1、简介MongoDB复制是将数据同步在多个服务器的过程,类似MySQL Replication是一种异步复制;复制提供了数据的冗余备份,并在多个服务器上存储数据副本,提高了数据的可用性, 并可以保证数据的...
    99+
    2022-10-18
  • mongodb 副本集搭建
    mongodb的副本集模式较早前的master-slave模式有了很大的改进,由于之前的master-slave模式不支持主机宕机之后切换到从机,已经逐渐被淘汰。而现在官方推荐的副本集模式,支持多个节点并存...
    99+
    2022-10-18
  • mongodb 副本集创建
    vi install_mongo.shtar -zxvf mongodb-linux-x86_64-rhel62-3.2.9.tgzmv mongodb-linux-x86_64-rhel62-3.2.9 ...
    99+
    2022-10-18
  • 配置mongodb副本集
    主机信息:[root@my2 db]# cat /etc/hosts127.0.0.1   localhost localhost.localdomain localhost4 loca...
    99+
    2022-10-18
  • 3.4-MongoDB副本集搭建
    * MongoDB 副本集(repl set)介绍早期版本使用master-slave,一主一从和MySQL类似,但slave在此架构中为只读,当主库宕机后,从库不能自动切换为主目前已经淘汰master-s...
    99+
    2022-10-18
  • mongoDB副本集的搭建
    环境简介    192.168.1.151      FedoraServer   用作副本集的主库,已经有数据    192...
    99+
    2022-10-18
  • 3.5-MongoDB副本集测试
    *MongoDB副本集测试主上建库,建集合>use mydb   #建库>db.acc.insert({AccountID:1,UserName:"123",password:"123...
    99+
    2022-10-18
  • mongodb复制集如何维护
    这篇文章将为大家详细讲解有关mongodb复制集如何维护,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一、新增副本集成员 1、登录primary 2、use a...
    99+
    2022-10-19
  • MongoDB副本集成员状态
    副本集成员状态副本集的每个成员都有一个状态,反映了它在集合中的配置情况。数字名称状态描述0STARTUP还不是任何集合的活动成员。所有的成员启动在该状态。在STARTUP状态mongod解析副本集配置文档。...
    99+
    2022-10-18
  • Docker搭建MongoDB 4.0副本集
    环境: 系统版本:CentOS 7.5 内核:4.18.7-1.el7.elrepo.x86_64 Docker-ce: 18.06 MongoDB: 4.0.3 宿主机IP:192.168.1.1 M...
    99+
    2022-10-18
  • MongoDB学习笔记:副本集
    本文更新于2022-01-08,使用MongoDB 4.4.5。 目录单台服务器下创建副本集多台服务器下创建副本集重新启动并连接到副本集维护副本集节点 单台服务器下创建副本集 确保/data/db目录存在且当前系统用户有读写权限。例如...
    99+
    2019-12-08
    MongoDB学习笔记:副本集
  • 如何配置 MongoDB 副本集
    MongoDB 已经成为市面上最知名的 NoSQL 数据库。MongoDB是面向文档的,它的无模式设计使得它在各种各样的WEB 应用当中广受欢迎。最让我喜欢的特性之一是它的副本集(Replica Set),...
    99+
    2022-10-18
  • mongodb如何更换副本集
    要更换MongoDB副本集,需要遵循以下步骤:1. 添加新副本集成员:首先,在新服务器上安装MongoDB,并确保它可以连接到现有的...
    99+
    2023-08-23
    mongodb
  • MongoDB安装与副本集配置
    副本集是一组,由N个mongo节点组成并协同工作的,提供自动的故障集群转移。...
    99+
    2022-10-18
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作