MongoDBMaster/Slaver配置
接MongoDB快速入门
本文主要介绍MongoDB Master/Slaver配置
- 首先创建Mongo Master
/home/hrj/mongodb-linux-i686-static-1.6.5/bin/mongod --master --dbpath /home/hrj/mongodb_data --auth --maxConns 50 --port 6688
- 其次创建Mongo Slaver
/home/hrj/mongodb-linux-i686-static-1.6.5/bin/mongod --slave --source myna5.sds.cnb.yahoo.com:6688 --auth --maxConns 50 --auth --port 6689 --fastsync --autoresync --dbpath /home/hrj/mongodb_slave_data
- 创建Master、Slaver帐号
~/mongodb-linux-i686-static-1.6.5/bin/mongo 127.0.0.1:6689 ### 在Slaver上创建帐号
> use local
switched to db local
> db.addUser('hrj','xxx')
{
"_id" : ObjectId("4d6f6527013fcbcc74575c20"),
"user" : "hrj",
"readOnly" : false,
"pwd" : "b27edaa5a8858aa3d46b60698fce1359"
}
~/mongodb-linux-i686-static-1.6.5/bin/mongo 127.0.0.1:6688 ### 在Master上创建帐号
MongoDB shell version: 1.6.5
connecting to: 127.0.0.1:6688/test
>use local
switched to db local
> db.addUser('hrj','xxx')
{
"_id" : ObjectId("4d6f6527013fcbcc74575c20"),
"user" : "hrj",
"readOnly" : false,
"pwd" : "b27edaa5a8858aa3d46b60698fce1359"
}
>use test ###添加帐号认证
switched to db local
> db.auth('hrj','xxx')
- 向Master加载数据,测试Slaver是否正常同步
###Master
~/mongodb-linux-i686-static-1.6.5/bin/mongo 127.0.0.1:6688
MongoDB shell version: 1.6.5
connecting to: 127.0.0.1:6688/test
> db.foo.save({'mongodb':'hello world'}) ###导入数据
> db.foo.find() ###查询数据
{ "_id" : ObjectId("4d6f72c6d807e8561b0f3db5"), "mongodb" : "hello world" }
###Slaver
~/mongodb-linux-i686-static-1.6.5/bin/mongo 127.0.0.1:6689
MongoDB shell version: 1.6.5
connecting to: 127.0.0.1:6689/test
> db.foo.find() ###查询Slaver同步数据
{ "_id" : ObjectId("4d6f72c6d807e8561b0f3db5"), "mongodb" : "hello world" }
> db.foo.save({'mongodb':'hello world test 1'}) ###Slaver导入数据,提示"not master"
not master
至此Master/Slaver大致调试成功。在这里大致提一下Master/Slaver特别参数:
Master
--master master模式
--oplogSize arg size limit (in MB) for op log
Slave
--slave slave模式
--source arg source指定master位置
--only arg 单独指定备份某一database
--slavedelay arg 指定与Master延迟时间(秒)
--autoresync 当Slave数据过时后自动重连
特别推荐:
很可能会出现Master
服务器Down掉之后,需要用Slave服务器来顶替Master提供服务器的情况,这个时候就需要做如下操作:
- 停止Slave进程(mongod)
- 删除Slave数据目录中的local.*
- 以--master模式启动Slave
这个时候,Slave就可以作为一个Master来运行了。
当前题目:MongoDBMaster/Slaver配置
地址分享:
http://csdahua.cn/article/jeepdh.html
扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流