MongoDB 主从配置

Netkiller NoSQL 手札

2.3. Replication

很多教程上面采用手工配置主从复制,我不建议你这样启动,请采用修改/etc/mongod.conf配置文件的方案。

创建主:

mongod –port 27017 –dbpath /var/lib/mongodb –master

 创建从:

mongod –port 27017 –dbpath /var/lib/mongodb –slave –source master_ip_address:27017		

2.3.1. Master

sed -i "s/#master = true/master = true/" /etc/mongod.conf

systemctl restart  mongod			

2.3.2. Slave

sed -i "s/#slave = true/slave = true/" /etc/mongod.conf
sed -i "s/#source = arg/source = mongodb.master.example.com/" /etc/mongod.conf

systemctl restart  mongod			

2.3.3. 测试

进入 Master

			[root@localhost ~]# mongo
MongoDB shell version: 2.6.11
connecting to: test
Welcome to the MongoDB shell.
For interactive help, type "help".
For more comprehensive documentation, see
	http://docs.mongodb.org/
Questions? Try the support group
	http://groups.google.com/group/mongodb-user
Server has startup warnings:
2015-11-14T15:51:21.215+0800 [initandlisten]
2015-11-14T15:51:21.215+0800 [initandlisten] ** WARNING: Readahead for /var/lib/mongodb is set to 4096KB
2015-11-14T15:51:21.215+0800 [initandlisten] **          We suggest setting it to 256KB (512 sectors) or less
2015-11-14T15:51:21.215+0800 [initandlisten] **          http://dochub.mongodb.org/core/readahead
>
>
> db.foo.save({'name':'neo','address':{'city':'shenzhen','post':518000},'phone':[13113668890,13322993040]})
WriteResult({ "nInserted" : 1 })
> db.foo.find();
{ "_id" : ObjectId("5646e881a11081d5998bf70c"), "name" : "neo", "address" : { "city" : "shenzhen", "post" : 518000 }, "phone" : [ 13113668890, 13322993040 ] }
>			

进入 Slave

			[root@localhost ~]# mongo
MongoDB shell version: 2.6.11
connecting to: test
Welcome to the MongoDB shell.
For interactive help, type "help".
For more comprehensive documentation, see
	http://docs.mongodb.org/
Questions? Try the support group
	http://groups.google.com/group/mongodb-user
Server has startup warnings:
2015-11-14T15:51:23.668+0800 [initandlisten]
2015-11-14T15:51:23.668+0800 [initandlisten] ** WARNING: Readahead for /var/lib/mongodb is set to 4096KB
2015-11-14T15:51:23.668+0800 [initandlisten] **          We suggest setting it to 256KB (512 sectors) or less
2015-11-14T15:51:23.668+0800 [initandlisten] **          http://dochub.mongodb.org/core/readahead
> db.foo.find();
{ "_id" : ObjectId("5646e881a11081d5998bf70c"), "name" : "neo", "address" : { "city" : "shenzhen", "post" : 518000 }, "phone" : [ 13113668890, 13322993040 ] }
>			

原文发布于微信公众号 - Netkiller(netkiller-ebook)

原文发表时间:2015-11-14

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏逆向与安全

360 so动态脱壳

目前so加壳有很多家,我己知的有 爱加密,梆梆,360, 娜迦等 各有所长。今天把学习360的脱壳笔记记录下来与小菜共同学习,没有其它目的,大神请绕道!

550
来自专栏有困难要上,没有困难创造困难也要上!

Docker中YUM安装RPM包报错 Rpmdb checksum is invalid: dCDPT(pkg checksums): ...

3727
来自专栏DeveWork

Mac 中JetBrain 系列IDE 的配置文件同步(通过Dropbox)

个人在自己的MacBook Pro 笔记本上已经安装有了JetBrains 的几个IDE(如Webstorm、Pycharm),在作为公司工作机的iMac 上也...

1828
来自专栏康怀帅的专栏

Docker 镜像多阶段构建

本文内容来自我参与维护的 《Docker 从入门到实践》 项目。 之前的做法 在 Docker 17.05 版本之前,我们构建 Docker 镜像时,通常会采用...

3144
来自专栏Java后端技术

Docker三十分钟快速入门(下)

  上篇文章我们进行了Docker的快速入门,基本命令的讲解,以及简单的实战,那么本篇我们就来实战一个真实的项目,看看怎么在产线上来通过容器技术来运行我们的项...

642
来自专栏阿杜的世界

Docker with Spring Boot

前段时间在我厂卷爷的指导下将Docker在我的实际项目中落地,最近几个小demo都尽量熟悉docker的使用,希望通过这篇文章分享我截止目前的使用经验(如有不准...

774
来自专栏CSDN技术头条

Docker 容器明文密码问题解决之道

Docker 带着 “Dockerize Everything” 的口号,以“软件标准”的姿态展现于世人面前,不断影响大家对于软件的理解。然而现实是否就如想象中...

1898
来自专栏云计算教程系列

如何在Ubuntu 14.04上使用Fluentd和ElasticSearch集中Docker日志

Fluentd是一个开源数据收集器,旨在统一日志记录基础架构。它旨在通过简化和扩展日志来收集和存储日志,从而将运营工程师,应用工程师和数据工程师聚集在一起。

850
来自专栏一个默默无闻的工程师的日常

OpenStack Project-Zun(容器管理)

1346
来自专栏JMCui

Docker 系列一(概念原理和安装).

    Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化...

894

扫描关注云+社区