簡述: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/?p=602