天天看點

MongoDB實戰系列之一:MongoDB安裝部署 恭祝大家元旦快樂! 

簡述:MongoDB是一個基于分布式檔案存儲的資料庫。由C++語言編寫。旨在為WEB應用提供可擴充的高性能資料存儲解決方案。

環境:CentOS 5.5 x64

安裝:

cd /root/tools 

wget http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-2.0.0.tgz 

tar zxvf mongodb-linux-x86_64-2.0.0.tgz 

mv mongodb-linux-x86_64-2.0.0 /elain/apps/mongodb-linux-x86_64-2.0.0 

ln -s /elain/apps/mongodb-linux-x86_64-2.0.0 /elain/apps/mongodb 

ln -s /elain/apps/mongodb/bin/*  /bin/ 

#添加使用者組 

/usr/sbin/groupadd -g 690 mongodb 

/usr/sbin/useradd -g mongodb mongodb -u 690 -s /sbin/nologin 

#建立存儲目錄

mkdir -p /elain/data/mongodb/db/ 

chown -R mongodb.mongodb /elain/data/mongodb/db/ 

#啟動運作

nohup mongod --dbpath /elain/data/mongodb/db & 

#開機自啟動

echo "mongod --dbpath /elain/data/db" >>/etc/rc.local 

#以服務方式啟動mongodb,要求驗證

/elain/apps/mongodb/bin/mongod --fork --port 27001 --auth --dbpath /elain/data/mongodb/db/ --logpath /elain/logs/mongodb/mongodb.log 

#注:參數中用到的目錄需建立

#停止

kill -2 `ps -ef|grep mongod|grep -v grep|awk '{print $2}'` 

#驗證啟動

[root@md01 ~]# netstat -ln 

Active Internet connections (only servers) 

Proto Recv-Q Send-Q Local Address               Foreign Address             State      

tcp        0      0 0.0.0.0:28001               0.0.0.0:*                   LISTEN      

tcp        0      0 0.0.0.0:27001               0.0.0.0:*                   LISTEN     

還可以通過通路:http://ip:28001/  浏覽

#登入:

mongo --host serverip:27001 

[root@md01 ~]# mongo --host localhost:27001 

MongoDB shell version: 2.0.0 

connecting to: localhost:27001/test 

>  

#測試

[root@md02 mongodb]# mongo 

MongoDB shell version: 1.8.3 

connecting to: test 

Thu Sep  8 22:16:13 [initandlisten] connection accepted from 127.0.0.1:43643 #2 

> db.foo.save( { a : 1 } ) 

> db.foo.find() 

{ "_id" : ObjectId("4e68ce01f4be44b5812e7f9a"), "a" : 1 } 

附錄一:

mongodb的bin下各工具的用途:

mongod:資料庫服務端,類似mysqld,每個執行個體啟動一個程序,可以fork為Daemon運作

mongo:用戶端指令行工具,類似sqlplus/mysql,其實也是一個js解釋器,支援js文法

mongodump/mongorestore:将資料導入為bson格式的檔案/将bson檔案恢複為資料庫,類似xtracbackup

mongoexport/mongoimport:将collection導出為json/csv格式資料/将資料導入資料庫,類似mysqldump/mysqlimport

bsondump:将bson格式的檔案轉儲為json格式的資料

mongos:分片路由,如果使用了sharding功能,則應用程式連接配接的是mongos而不是mongod

mongofiles:GridFS管理工具

mongostat:實時監控工具

附錄二:

mongod的主要參數有:

dbpath: 資料檔案存放路徑,每個資料庫會在其中建立一個子目錄。

logpath:錯誤日志檔案

logappend: 錯誤日志采用追加模式(預設是覆寫模式)

bind_ip: 對外服務的綁定ip,一般設定為空,及綁定在本機所有可用ip上,如有需要可以單獨指定

port: 對外服務端口。Web管理端口在這個port的基礎上+1000

fork: 以背景Daemon形式運作服務

journal:開啟日志功能,通過儲存記錄檔來降低單機故障的恢複時間,在1.8版本後正式加入,取代在1.7.5版本中的dur參數。

syncdelay: 執行sync的間隔,機關為秒。

directoryperdb: 每個db存放在單獨的目錄中,建議設定該參數。

maxConns: 最大連接配接數

repairpath: 執行repair時的臨時目錄。在如果沒有開啟journal,異常當機後重新開機,必須執行repair操作。

轉載請注明: 轉載自http://www.elain.org

本文轉自 elain2012 51CTO部落格,原文連結:http://blog.51cto.com/elain/755841