簡述: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