Mongodb的Replica Sets实践(适用2.0.5 版本)

来源:互联网 发布:图片base64编码php 编辑:程序博客网 时间:2024/04/29 18:35

搭建mongodb 的Replica Sets模式,本文是在 2.0.5 版本下测试的。

mongo 下载地址: http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-2.0.5.tgz

解压到 /usr/local/mongodb/ 目录

假如有三台服务器server1  server2  server3(充当arbiter),如果在一台服务器上 启动命令上需要加上不同的 port  和指向不同的 数据库存放地址

三台服务器分别执行如下命令:

# rm -rdf /mnt/dbdata/*
# rm -rdf /mnt/dblog/*

# mkdir -p /mnt/dbdata
# mkdir -p /mnt/dblog
# mkdir -p /mnt/dbkey
# echo "my pass word" > /mnt/dbkey/pass
# chmod 600 /mnt/dbkey/pass

在三台服务器上启动mongo
#/usr/local/mongodb/bin/mongod --keyFile /mnt/dbkey/pass --replSet myset --dbpath /mnt/dbdata --logpath /mnt/dblog/mongodb1.log --auth --fork 

设置Replica Sets
在server1上执行
# /usr/local/mongodb/bin/mongo

> cfg={
_id : "myset",
members : [
{ _id : 0, host : "server1"},
{ _id : 1, host : "server2"}] }

> rs.initiate(cfg);

执行几分钟才能完成,需要等待。

或者执行  rs.initiate() 后然后执行
rs.add("server2");

加上arbiter server
PRIMARY>  rs.addArb("server3");

执行 rs.status();  如果一切正常就OK了。
--------------------------------------------------------

设置数据库密码:
use admin
db.addUser("rootuser","1111111");

登录:
/usr/local/mongodb/bin/mongo
use admin
db.auth("rootuser","1111111");


下来添加数据库,并设置密码 需要在 PRIMARY 上执行。






原创粉丝点击