【mongodb】mongodb 实现主从复制

MongoDB  version: 1.8.3

mongodb文档数据库提供了主从复制模式,其实mongodb的主从复制配置很简单,就是启动mongod服务进程的时候 分别指定 --master ,--slave,一个是以主模式启动,另一个属于从模式启动,当主库更新时,数据就会被被复制到从数据库中。

此次测试仅在单台服务器上开启2deamon来模拟2台服务器进行主从复制:

主库:./mongod --master --dbpath=/opt/monogdata/data --port=60000

从库:./mongod --slave --dbpath=/opt/monogdata/slavedata/ --port=60010 --source=127.0.0.1:60000

--主库:

[monogdb@yangDB bin]$ ./mongo --port 60000

MongoDB shell version: 1.8.3-rc0

connecting to: 127.0.0.1:60000/test

> show dbs

admin   (empty)

local   1.203125GB

test    0.203125GB

> use test

switched to db test

> show collections --查看主库中的对象

system.indexes   --system.indexes用来存放索引的表

test --一个测试表

--查看test表中的内容

> db.test.find(); --此操作=select * from test;

{ "_id" : ObjectId("4e3fe5d8e138232e61000000"), "id" : 1, "val" : "hello monogdb" }

--向test表中插入数据

> db.test.insert({id:2,val:"yangql is learing monogdb master slave!"});

> db.test.find();                                                      

{ "_id" : ObjectId("4e3fe5d8e138232e61000000"), "id" : 1, "val" : "hello monogdb" }

{ "_id" : ObjectId("4e45291c018d1a0d765a9788"), "id" : 2, "val" : "yangql is learing monogdb master slave!" }

                  

--备库

[monogdb@yangDB bin]$ ./mongo --port=60010

MongoDB shell version: 1.8.3-rc0

connecting to: 127.0.0.1:60010/test

> db

test

> db.printSlaveReplicationInfo(); ---显示主库的信息。

source:   127.0.0.1:60000

         syncedTo: Fri Aug 12 2011 21:19:42 GMT+0800 (CST)

                 = 7secs ago (0hrs)

> show collections

system.indexes

test  --主库的数据已经被复制到从库了

> db.test.find();

{ "_id" : ObjectId("4e3fe5d8e138232e61000000"), "id" : 1, "val" : "hello monogdb" }

--主库更新数据后查看从库。

> db.test.find();

{ "_id" : ObjectId("4e3fe5d8e138232e61000000"), "id" : 1, "val" : "hello monogdb" }

{ "_id" : ObjectId("4e45291c018d1a0d765a9788"), "id" : 2, "val" : "yangql is learing monogdb master slave!" }

--测试在从库更新数据,但是不成功!

> db.test.insert({id:2,val:"yangql is writing things to  slave,but it can`t do this!"});                                    

not master

> db.test.find();  

{ "_id" : ObjectId("4e3fe5d8e138232e61000000"), "id" : 1, "val" : "hello monogdb" }

{ "_id" : ObjectId("4e45291c018d1a0d765a9788"), "id" : 2, "val" : "yangql is learing monogdb master slave!" }

monogdb的主从复制是不能达到主库当机以后,从库自动升级到主库的,而Replica Pairs借用arbiter可以完成主从故障迁移 。

参考资料:

monogdb 主从复制官方介绍

时间: 2024-09-21 09:32:45

【mongodb】mongodb 实现主从复制的相关文章

MongoDB 主从复制实例讲解_MongoDB

主从复制可以用来做数据库的备份,故障恢复,读写分离. 本实验使用Mongodb 3.2版本,我们先查看一下mongod的帮助 [root@localhost mongodb]# mongod --help .....省略 Master/slave options (old; use replica sets instead): --master master mode --slave slave mode --source arg when slave: specify master as <s

MongoDB的主从复制及副本集的replSet配置教程_MongoDB

复制MongoDB的复制功能很重要,尤其是现在的存储引擎还不支持单击持久性.不仅可以用复制来应对故障切换,数据集成,还可以做读扩展,热备份或作为离线批处理的数据源. 1.主从复制主从复制是MongoDB最常用的复制方式.可用于备份,故障恢复和读扩展等. 基本就是搭建一个主节点和一个或多个从节点,每个从节点需要知道主节点的地址.运行mongod --master启动主服务器.运行mongod --slave --source master_address启动从服务器.[root@test02 ~]

MongoDB的Master-Slave主从模式配置及主从复制要点解析_MongoDB

主从配置mongodb的master-slave模式配置方式如下1.keyFile生成key_file openssl rand -base64 741 > mongo_key 将mongo_key 分别置于master 和 slave mongodb user可以access的地方. 设置权限 chmod 700 mongo_key 设置 onwer chown mongodb:nogroup mongo_key 2.master配置编辑/etc/mongodb.conf, 设置如下 mast

Redis、Memcache和MongoDB的区别

1.Memcached Memcached的优点: Memcached可以利用多核优势,单实例吞吐量极高,可以达到几十万QPS(取决于key.value的字节大小以及服务器硬件性能,日常环境中QPS高峰大约在4-6w左右).适用于最大程度扛量. 支持直接配置为session handle.Memcached的局限性: 只支持简单的key/value数据结构,不像Redis可以支持丰富的数据类型. 无法进行持久化,数据不能备份,只能用于缓存使用,且重启后数据全部丢失. 无法进行数据同步,不能将MC

mongodb学习笔记-tina

mongodb mongodb是面向文档的数据库,不是关系型数据库.基本思路是将原来的"行row" 概念换成更加灵活的"文档"document模型.  关于MongoDB的好处,优点之类的这里就不说了,唯一要讲的一点就是MongoDB中有三元素:数据库,集合,文档,其中"集合"就是对应关系数据库中的"表","文档"对应"行". --- [root@viptest2 bin]# ll mo

linux中MongoDB数据库详细配置说明

启动MongoDB有2种方式,一是直接指定配置参数,二是指定配置文件.这里先介绍配置文件,启动方式如下: mongod --config /etc/mongodb.conf 配置如下: verbose:日志信息冗余.默认false.提高内部报告标准输出或记录到logpath配置的日志文件中.要启用verbose或启用verbosity 用vvvv参数,如: verbose = true vvvv = true ps:启动verbose冗长信息,它的级别有 vv~vvvvv,v越多级别越高,在日志

《Hadoop实战手册》一1.9 使用Pig从HDFS导出数据到MongoDB

1.9 使用Pig从HDFS导出数据到MongoDB MongoDB是一种NoSQL数据库,用于存储和检索海量数据.MongoDB通常用于存储面向用户的数据,这些数据必须经过清洗.格式化之后才可以被使用.Apache Pig从某种程度上讲就是用来处理这种任务的.Mongostorage类使得使用Pig可以非常方便地批量处理HDFS上的数据,再直接将这些数据导入MongoDB中.本节将使用Mongostorage类将HDFS上的数据导出到MongoDB数据库中. 准备工作 使用Mongo Hado

MongoDB资料汇总

与大家共勉~ 1.MongoDB是什么 MongoDB介绍PPT分享 MongoDB GridFS介绍PPT两则 初识 MongoDB GridFS MongoDB GridFS 介绍 一个NoSQL与MongoDB的介绍PPT MongoDB:下一代MySQL? 写给Python程序员的MongoDB介绍 又一篇给Python程序员的MongoDB教程 MongoDB源码研究系列文章 白话MongoDB系列文章 MongoDB Tailable Cursors 特性介绍 MongoDB 文档阅

能同时安装oracle和mongodb吗

问题描述 能同时安装oracle和mongodb吗 一个是关系型的数据库,一个是非关系型(nosql)的.安装在一起会不会有什么问题,会冲突吗 解决方案 并不会,我电脑上也是按了MONGODB和一个关系型数据库 解决方案二: 安装MongoDBmongodb安装mongodb在linux下的安装

MongoDB使用常见问题及应用场景全集(含大咖分享视频干货)

2017年3月的MongoDB杭州用户交流会获得了广大用户的好评,更有很多其他地方的小伙伴们咨询什么时候能来当地开交流会.为了让各位MongoDB爱好者get到现场分享嘉宾的满满干货,特对交流会视频及相关资料进行整理: 活动视频地址: 1.妈妈帮平台技术架构及MongoDB使用实践 --胡兴邦 播放:https://yq.aliyun.com/edu/lesson/play/684 2.阿里云MongoDB Sharding备份和恢复服务深度解密--明俨 播放:https://yq.aliyun