Deprecated: imwpcache\f884414bce24ee67f\f73723ec7b1919fa5::__construct(): Implicitly marking parameter $YECBGYFECGEAFWHA as nullable is deprecated, the explicit nullable type must be used instead in /www/wwwroot/www.chuangxiangniao.com/wp-content/plugins/imwpcache-dist/build/f884414bce24ee67ff73723ec7b1919fa5.php on line 2

Deprecated: imwpcache\f884414bce24ee67f\f73723ec7b1919fa5::__construct(): Implicitly marking parameter $BBWFDDBHHYHDXXAB as nullable is deprecated, the explicit nullable type must be used instead in /www/wwwroot/www.chuangxiangniao.com/wp-content/plugins/imwpcache-dist/build/f884414bce24ee67ff73723ec7b1919fa5.php on line 2
mongodb主从复制小结_创想鸟

mongodb主从复制小结

在生产环境中单台数据库一般不能满足业务稳定性的需求,所以数据库主从复制架构在生产环境中很常见,用于主从复制也是Mongodb最常用的一种架构方式。这种方式非

   在生产环境中单台数据库一般不能满足业务稳定性的需求,所以数据库主从复制架构在生产环境中很常见,用于主从复制也是mongodb最常用的一种架构方式。这种方式非常灵活,可用于备份、故障恢复、读扩展等,从而提高数据处理性能和冗余,常用架构模式是一主一从、一主多从、双主。今天我们主要对mongodb的主从架构做一小结。

环境说明:

系统:CentOS6.4_x64

主(Master):192.168.2.2

从(Slave):192.168.2.3

一、安装与基础配置

#cd /usr/local

#tar -zxvf  mongodb-linux-x86_64-2.2.6.tgz

#mv  mongodb-linux-x86_64-2.2.6.tgz mongodb

mongodb配置文件在  /usr/local/mongodb/conf

主从数据库目录都在 /usr/local/mongodb/data

日志目录都在       /usr/local/mongodb/logs

#mkdir -p /usr/local/mongodb/conf

#mkdir -p /usr/local/mongodb/data

#mkdir -p /usr/local/mongodb/logs

二、一主一从配置

关键点:

1)、在数据库集群中要明确的知道谁是主服务器,主服务器只有一台。

2)、从服务器需要知道自己的数据源,也就是对于自己来说主服务器是谁。

3)、master用来确定主服务器,slave来控制从服务器, source确定从服务的数据源。

192.168.2.2  主

conf下新建一文件mongodb.conf

添加如下:

port=27017      

fork=true      

logpath=/usr/local/mongodb/logs/mongodb.log  

logappend=true  

dbpath=/usr/local/mongodb/data  

maxConns=1024    

master=true      

oplogSize=2048

192.168.2.3  从

port=27017      

fork=true      

logpath=/usr/local/mongodb/logs/mongodb.log  

logappend=true  

dbpath=/usr/local/mongodb/data  

maxConns=1024    

slave=true                

source=192.168.2.2:27017  

autoresync=true    

BibiGPT-哔哔终结者 BibiGPT-哔哔终结者

B站视频总结器-一键总结 音视频内容

BibiGPT-哔哔终结者 28 查看详情 BibiGPT-哔哔终结者

三、启动MONGODB

[root@localhost ~]# echo “PATH=$PATH:/usr/local/mongodb/bin” >> /etc/profile

[root@localhost ~]# source /etc/profile

[root@localhost ~]# mongod -f /usr/local/mongodb/conf/mongod.conf

先启主再启从

观察一下主的日志mongodb.log

五、思考与补充:

1、如何指定要同步的库

默认是同步所有的库,如果需要指定只同步某个库,可以在从库的配置文件中进行指定

方法:only=test  

意思就是只同步TEST库

2、从库上还可设置的其他参数

slavedelay  从节点设置主数据库同步数据的延迟(单位是秒)

fastsync    从节点以主数据库的节点快照为节点启动从数据库

autoresync  如果不同步则自动从新同步数据库

3、从服务器上查看同步状态

>db.printReplicationInfo()

this is a slave, printing slave replication info.

source:   192.168.2.2:27017

syncedTo: Thu Apr 17 2014 01:38:02 GMT-0700 (PDT)

= 10 secs ago (0.04hrs)

4、备份与恢复

任何数据库都需要备份与恢复,这个你懂的。

备份:

>mongodump -h dbhost -d dbname -o dbdirectory

-h:MongDB所在服务器地址,例如:192.168.2.2,当然也可以指定端口号:192.168.2.2:27017

-d:需要备份的数据库实例,例如:test

-o:备份的数据存放位置,例如:/data/dump,当然该目录需要提前建立,在备份完成后,系统自动在dump目录下建立一个test目录,这个目录里面存放该数据库实例的备份数据。

恢复:

>mongorestore -h dbhost -d dbname –directoryperdb dbdirectory

-h:MongoDB所在服务器地址

-d:需要恢复的数据库实例,例如:test,当然这个名称也可以和备份时候的不一样,比如test2

–directoryperdb:备份数据所在位置,例如:/data/dump/test,这里为什么要多加一个test,而不是备份时候的dump,自己查看提示吧!

–drop:恢复的时候,先删除当前数据,,然后恢复备份的数据。就是说,恢复后,备份后添加修改的数据都会被删除,谨慎使用!

5、监控

可以使用mongodb自带28017端口进行图形化监控

wKioL1NPlZHgKibdAAJAnTPNoNw564.jpg

本文出自 “滴水穿石孙杰” 博客,请务必保留此出处

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/560840.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
文本相似度计算比赛-预训练模型baseline,直接上90%
上一篇 2025年11月10日 00:57:30
生成式AI应用的五大优势
下一篇 2025年11月10日 00:57:31

相关推荐

  • Spring Boot集成MongoDB Atlas:正确配置与故障排除

    本教程详细指导如何在Spring Boot应用中正确配置与连接MongoDB Atlas集群。我们将重点讲解如何获取并使用正确的Atlas连接URI,安全地处理用户认证信息,以及准确指定目标数据库。通过实例代码和常见错误排查,帮助开发者避免连接失败,确保应用与MongoDB Atlas的顺畅集成。 …

    2026年9月22日
    600
  • 如何在mysql中升级主从复制架构

    先升级从库再切换主库,确保数据一致性。逐步升级从库并验证复制状态,确认无延迟后选择已升级从库作为新主库,调整拓扑结构,最后启用GTID和半同步提升可靠性。 在 MySQL 中升级主从复制架构通常是为了提升性能、增强高可用性或支持新功能。这个过程需要谨慎操作,避免数据丢失或服务中断。核心思路是保证数据…

    2026年9月12日
    100
  • Laravel自定义用户提供者?用户提供者怎样实现?

    自定义用户提供者可集成非Eloquent模型与多种数据源,如NoSQL、API、LDAP或文件,通过实现UserProvider和Authenticatable接口,灵活处理用户检索与密码验证,解决认证问题需确保接口方法正确实现并合理配置。 自定义 Laravel 用户提供者允许你使用非 Eloqu…

    2026年9月11日
    100
  • 数据量大的App制作,数据库如何选型?

    在开发处理大量数据的应用程序时,数据库的选择至关重要。选择一个合适的数据库不仅能确保数据的存储效率和安全性,还能提升应用程序的整体性能和用户体验。以下将从几个关键方面探讨如何为数据量大的app选择合适的数据库。 首先,考虑数据量的大小。 对于数据量庞大的应用程序,首要考虑的是数据库的存储能力和扩展性…

    2026年9月7日
    000
  • 在 Spring Boot Web 应用程序中序列化枚举

    枚举类型在定义应用程序域内有限且明确的值集方面非常有效,有助于避免代码中出现无效状态。 应用场景 以下以一个Spring Boot 3.3.x 和 MongoDB 实现的笔记Web应用为例,演示枚举值的序列化和反序列化方法。 我们将定义一个Type枚举,表示待办事项的类型:事件和活动。 public…

    2026年9月7日
    000
  • 玩转mongoDB(五):mongoDB 3.0+ 查询性能分析

    为了展示mongodb的性能分析方法,我们首先创建一个包含200万个文档的集合。(在我的电脑上,插入过程大约耗时15分钟。如果您想插入更多文档,只要有耐心等待即可。) 为了演示的效果,我们先来创建一个有200万个文档的记录。(我自己的电脑耗了15分钟左右插入完成。如果你想插更多的文档也没问题,只要有…

    2026年9月7日
    200
  • 在ThinkPHP6中使用Mysql主从复制

    随着业务的不断扩展,数据库读写压力越来越大,单一的数据库节点已经不能满足业务需求,因此引入了主从复制机制,通过将数据拆分到多个节点上,以提高数据库的读写效率。 ThinkPHP6是一个轻量级的PHP框架,它提供了简单易用的Mysql主从复制机制,以帮助开发者更好地处理数据库读写压力。 本文将介绍如何…

    用户投稿 2026年9月7日
    300
  • MySQL如何监控数据库性能_有哪些常用监控工具?

    MySQL如何监控数据库性能_有哪些常用监控工具?MySQL如何监控数据库性能_有哪些常用监控工具?MySQL如何监控数据库性能_有哪些常用监控工具?MySQL如何监控数据库性能_有哪些常用监控工具?

    mysql性能监控需关注关键指标、使用合适工具、设置告警并注意易忽略细节。一、最关键监控指标包括连接数、qps/tps、慢查询数量、innodb读写情况、锁等待与死锁;二、常用工具包括show processlist、pmm、zabbix、prometheus+grafana、pt-query-di…

    2026年9月5日 用户投稿
    100
  • 浅谈Mysql5.7中怎么搭建主从复制?

    浅谈Mysql5.7中怎么搭建主从复制?浅谈Mysql5.7中怎么搭建主从复制?浅谈Mysql5.7中怎么搭建主从复制?浅谈Mysql5.7中怎么搭建主从复制?

    mysql5.7中怎么搭建主从复制?下面本篇文章带大家了解一下mysql5.7中主从复制搭建步骤,希望对大家有所帮助! 一、概述 主从复制可以实现对数据库备份和读写分离: 为了避免服务的不可用以及保障数据的安全可靠性,我们至少需要部署两台或两台以上服务器来存储数据库数据,也就是我们需要将数据复制多份…

    2026年9月4日 用户投稿
    200
  • mysql中什么是主从复制?怎么配置?

    本篇文章是mysql的进阶学习,介绍一下主从复制原理及其配置,希望对大家有所帮助! 对于现在的系统来说,在业务复杂的系统中,数据库往往是应用的瓶颈,单机往往是不能扛住大型系统的并发压力的,这时候需要从数据库方面下手解决其瓶颈,例如sql语句需要锁表,导致暂时不能使用读的服务,那么就很影响运行中的业务…

    2026年9月4日
    100
  • 高效单元测试:使用Helmich/Mongomock模拟MongoDB

    我最近参与开发一个基于mongodb的项目,其中涉及大量的数据库操作。为了保证代码质量,我们需要编写全面的单元测试。然而,直接使用真实的mongodb进行单元测试带来了诸多不便:测试速度慢,需要搭建和维护测试数据库,以及测试环境的依赖性等问题。这些问题严重影响了开发效率和测试的稳定性。 为了解决这个…

    用户投稿 2026年9月4日
    200
  • 这次简单多了,最新版 MongoDB 安装

    这次简单多了,最新版 MongoDB 安装这次简单多了,最新版 MongoDB 安装这次简单多了,最新版 MongoDB 安装这次简单多了,最新版 MongoDB 安装

    在 windows 10 系统上安装 mongodb 4.0.1 版本变得更为简便,基本上一路点击“下一步”就能完成安装,不再需要繁琐的配置。 首先,访问 MongoDB 官方网站,下载 MongoDB 4.0.1 版本,网址如下: https://www.php.cn/link/9cba84644…

    2026年9月4日 用户投稿
    300
  • Web全栈开发者如何提升技能,获得更好的就业机会?

    Web全栈开发:提升技能,拓展职业发展 如何提升Web全栈开发技能,从而获得更理想的就业机会,是许多开发者共同关注的问题。本文将探讨有效提升全栈开发能力的途径,帮助您在竞争激烈的就业市场中脱颖而出。 虽然无法提供具体的全栈学习路线图,但我们可以从编程大师的经验中汲取灵感。 (此处省略图片,但其核心思…

    2026年9月2日
    200
  • MongoDB ObjectId类型转换报错:如何正确处理String到ObjectId的转换?

    MongoDB ObjectId类型转换错误排查与解决 在MongoDB数据库操作中,ObjectId类型常常引发转换错误。ObjectId是MongoDB文档的唯一标识符,与普通字符串不同,直接转换可能导致异常。本文针对“将字符串转换为ObjectId时报错”的问题提供解决方案。 用户反馈的错误信…

    2026年9月1日
    000
  • MongoDB ObjectId类型转换错误:字符串转ObjectId失败如何排查?

    MongoDB ObjectId转换错误排查指南 在使用MongoDB时,经常需要将字符串类型的ID转换为ObjectId类型。如果转换失败,将会影响数据库操作。本文针对字符串转ObjectId报错问题提供排查方法。 问题:将字符串转换为ObjectId时报错,错误信息未提供,但可能原因与字符串ID…

    2026年9月1日
    100
  • 如何在CentOS和Fedora上将Node.js程序与MongoDB连接

    本篇文章将介绍关于将node.js应用程序与mongodb连接的方法。另外,在centos和redhat系统上使用mongoose节点应用程序为nodejs配置mongodb驱动器。 步骤1:首要条件 我们假设系统上已经安装了node.js和mongodb。如果没有安装,可以参考下面的文章完成所需的…

    2026年8月30日
    000
  • laravel支持几种数据库

    Laravel 支持多种数据库连接,包括:MySQL、PostgreSQL、SQLite、SQL Server、MariaDB、MongoDB 和 Redis。要连接到数据库,您需要在 .env 文件中设置配置并使用 DB 外观进行连接。 Laravel 支持的数据库 Laravel 是一个 PHP…

    2026年8月30日
    100
  • Spring Boot集成Nacos时,为什么读取不到配置项“spring.data.mongodb.uri”?

    Spring Boot项目Nacos配置中心读取“spring.data.mongodb.uri”失败分析 在使用Spring Boot整合Nacos配置中心时,经常会遇到配置读取失败的情况。本文针对错误提示“Could not resolve placeholder ‘spring.d…

    2026年8月28日
    100
  • Node.js/JavaScript:高效转换嵌套对象数组为自定义字符串格式

    本文将指导您如何在Node.js或JavaScript环境中,将来自MongoDB等数据源的嵌套对象数组,高效地转换为扁平化的自定义字符串格式。通过运用Array.prototype.map()、解构赋值、展开语法和模板字面量等现代JavaScript特性,您将学会如何优雅地处理复杂数据结构,实现清…

    2026年8月27日
    100
  • MySQL如何支持强化学习环境 使用MySQL管理强化学习状态和动作数据

    mysql可通过设计episodes、transitions、policies和hyperparameters等表构建结构化数据模型,支持强化学习的数据持久化;2. 数据写入采用批量插入策略以减少i/o开销,读取时利用索引提升采样效率,并结合json或blob字段存储复杂状态与动作;3. 为应对高并…

    2026年8月27日
    200

发表回复

登录后才能评论
关注微信