MongoDB的安装、主从配置、Replica Set配置

2014-11-24 18:53:58 · 作者: · 浏览: 0

前段时间一直在研究MongoDB,看了一些书,网上也看了很多资料,其实都是抄来抄去,很多根本都没有经过自己验证,随便往博客上一贴,然后坑死人,这样真的要不得,本人在开始就深受其害,所以这里未免后来人也跟我一样走这些弯路,自己就花点时间把自己的一些实践操作整理了下,写了这篇文章。


文章很简单,主要还是讲基本的配置,关键是配置的时候要细心,这里没有讲到原理性的东西,毕竟篇幅有限,所以如果大家在配置过程中有什么疑点都可以和我交流。希望大家多多支持。


还有,我工作很忙的,写篇帖子也不容易,大家觉得写得有用,给个回复,表示下支持,也算给点动力啦,呵呵。


一.Mongodb的安装


环境:linux 64bit


版本:2.0.1


位置:/opt/mongodb


安装步骤:


tar –zxvf mongodb-linux-x86_64-2.0.1.tar –C /opt/mongodb


mkdir /opt/mongodb/data


touch /opt/mongodb/logs


安装是很简单的,关键是下面的启动的配置。启动配置有三种情况,分别是正常的单主机启动,主从启动,副本集启动三种方式。


1. 单主机启动方式


启动


cd /opt/mongodb/bin


/opt/mongodb/bin/mongod –f mongodb.conf


#mongodb.conf是自定义的启动配置文件,其中参数auth表明需要认证才能登录,内容如下:


#start as daemon and need authentication


port=27017


fork=true


dbpath=/opt/mongodb/data/


logpath=/opt/mongodb/logs


auth=true



设置开机自动启动(可选)


echo "/opt/mongodb/bin/mongod –f /opt/mongodb/bin/mongodb.conf" >> /etc/rc.local


设置密码


#连接mongodb


cd /opt/mongodb/bin


./mongo


#默认进入到mongodb默认的test


#数据库设置用户名密码


#首先切换到admin库,先建立一个管理员账号


> use admin


> db.addUser("root","root");


#切换到test


use test


#test库添加用户名和密码


> db.addUser("testUser","123456");


#注:若此时显示


Tue May 22 16:16:29 uncaught exception: error {


"$err" : "unauthorized db:test lock type:-1 client:127.0.0.1",


"code" : 10057


}


说明设置密码已生效,此时要先转到admin库,输入认证再转回到test库设置用户名密码,如下:


use admin


db.auth(“root”,”root”);


use test


#下次再连接mongodb时需要使用如下方式:


./mongo –u testUser –p 123456


#删除用户


Db.system.users.remove({“user”:”testUser”});


#注:mongodb的用户名和密码都是针对每一个库的,所以不同的库可以设置不同的用户名和密码。