MongoDB Linux環境安裝及配置[轉]

CentOS 6.5系統中使用yum安裝MongoDB 2.6 教程mongodb

CentOS 6.5系統中使用yum安裝MongoDB 2.6 教程,本文共分5個步驟完成MongoDB的安裝.下面咱們在CentOS 6.5 x64系統上安裝最新的MongoDB 2.6.0版。

以前的MongoDB v2.4.x版的軟件倉庫有兩個包:shell


1)mongo-10gen-server
此包裏面有最新版的mongod和mongos守護程序以及相關的配置和初始化腳本。數據庫


2)mongo-10gen
此包裏面有最新版的全部MongoDB工具。這些工具方便你管理MongoDB系統。 vim

 

但在MongoDB v2.6.0版的軟件倉庫一共有五個包:

1)mongodb-org
此包是元數據包,它能夠實現自動安裝下面的4個組件包。

2)mongodb-org-server
此包裏面有mongod守護程序,以及相關的配置和初始化腳本。

3)mongodb-org-mongos
此包裏面有mongos守護程序。

4)mongodb-org-shell
此包裏面有mongo shell環境。

5)mongodb-org-tools
此包裏面有如下的MongoDB工具:mongoimport、bsondump、mongodump、mongoexport、mongofiles、mongoimport、mongooplog、mongoperf、mongorestore、mongostat以及mongotop。

控制腳本:mongodb-org包裏面有各類控制腳本,包括初始化腳本/etc/rc.d/init.d/mongod使用/etc/mongod.conf配置文件來對MongoDB進行配置。

MongoDB 2.6.0版再也不有mongos的控制腳本。mongos進程只用於分片的場景。你可使用mongod初始化腳原本驅動mongos控制腳本。

要安裝最新的64位MongoDB 2.6.0版,步驟以下: 服務器

 一、建立mongodb.repo文件

在/etc/yum.repos.d/目錄下建立文件mongodb-org-2.6.repo,它包含MongoDB倉庫的配置信息,內容以下:tcp

touch /etc/yum.repos.d/mongodb-org-2.6.repo --建立mongodb-org-2.6.repo文件
vim /etc/yum.repos.d/mongodb-org-2.6.repo 
--編輯mongodb-org-2.6.repo文件
[mongodb-org-2.6]
name=MongoDB 2.6 Repository baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/x86_64/ gpgcheck=0 enabled=1

二、執行安裝命令工具

yum install -y mongodb-org

 
三、修改/etc/mongod.conf文件oop

-----------------------XShell 5-------------------------------------

  sed -i 's/^logpath=\/var\/log\/mongodb\/mongod.log/logpath=\/data\/mongo\/mongod.log/g' /etc/mongod.conf
  sed -i 's/^dbpath=\/var\/lib\/mongo/dbpath=\/data\/mongo/g' /etc/mongod.conf
  sed -i 's/^bind_ip=127.0.0.1/#bind_ip=127.0.0.1/g' /etc/mongod.conf
  sed -i 's/^#quota=true/quota=false/g' /etc/mongod.conf
  sed -i 's/^#port=27017/port=181/g' /etc/mongod.confurl

mkdir -p /data/mongo
chown -R mongod:mongod /data/mongo

-------------------------------shell-------------------------------------spa

vi /etc/mongod.conf
logpath=/var/log/mongodb/mongod.log 修改mongodb數據庫日誌文件的存放位置/data/mongo/mongod.log
dbpath=/var/lib/mongo 修改mongodb數據庫文件的存放位置/data/mongo(記得修改全部者和全部組爲mongod:chown -R mongod:mongod /data/mongo)
bind_ip=127.0.0.1 註釋掉
#quota=true 取消註釋改成quota=false
---------------------shell---------------------------
mkdir -p /data/mongodb
chown -R mongod:mongod /data/mongodb

四、啓動\中止\重起\自啓動MongoDB

service mongod start
service mongod stop
service mongod restart
chkconfig mongod on

五、驗證MongoDB
能夠經過檢查日誌文件/var/log/mongodb/mongod.log的內容來判斷mongod進程是否正常運行。

六、設置MongoDB防火牆

iptables -I INPUT -p tcp --dport 27017 -j ACCEPT
service iptables save
service iptables restart 
cat /etc/sysconfig/iptables
service mongod start

 七、添加登錄用戶並受權(配置Mongo副本集不能添加用戶)

mongo 127.0.0.1:27017/admin  鏈接mongodb服務器
mongo 127.0.0.1:27017/admin -u用戶名 -p密碼 鏈接mongodb服務器(用戶名和密碼)
db.addUser(
"sa","1234") 添加用戶sa,設置密碼1234 db.auth("sa","1234") 添加sa用戶登陸受權
db.system.users.find() 查看全部用戶
show users 或者這個命令

exit 退出MongoDB

八、設置MongoDB必須使用登錄用戶登陸(配置Mongo副本集不用設置這裏

service mongod stop
vi /etc/mongod.conf
#noauth=true 改爲 noauth=false #auth
=true 取消註釋
service mongod start

MongoDB配備多大內存合適?

寬泛點來講,多多益善,若是要確切點來講,這實際取決於你的數據及索引的大小,內存若是可以裝下所有數據加索引是最佳狀況,不過不少時候,數據都會比內存大,好比本文所涉及的MongoDB實例:

mongo> db.stats()
{
 "dataSize" : 1004862191980,
 "indexSize" : 1335929664
}

本例中索引只有1G多,內存徹底能裝下,而數據文件則達到了1T,估計很難找到這麼大內存,此時保證內存能裝下熱數據便可,至於熱數據是多少,取決於具體的應用,你也能夠經過觀察faults的大小來判斷當前內存是否可以裝下熱數據,若是faults持續變大,就說明當前內存已經不能知足熱數據的大小了。如此一來內存大小就明確了:內存 > 索引 + 熱數據,最好有點富餘,畢竟操做系統自己正常運轉也須要消耗一部份內存。

相關文章
相關標籤/搜索