亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

Chinaunix

標(biāo)題: 白話MongoDB(三) [打印本頁(yè)]

作者: cnzwg2007    時(shí)間: 2012-03-10 14:57
標(biāo)題: 白話MongoDB(三)
通過源代碼編譯安裝好MongoDB之后,接下來需要配置運(yùn)行。在MongoDB的安裝目錄,有幾個(gè)子目錄,bin下面是可執(zhí)行文件,包括

    mongod:數(shù)據(jù)庫(kù)服務(wù)端,類似mysqld,每個(gè)實(shí)例啟動(dòng)一個(gè)進(jìn)程,可以fork為Daemon運(yùn)行
    mongo:客戶端命令行工具,類似sqlplus/mysql,其實(shí)也是一個(gè)js解釋器,支持js語法
    mongodump/mongorestore:將數(shù)據(jù)導(dǎo)入為bson格式的文件/將bson文件恢復(fù)為數(shù)據(jù)庫(kù),類似xtracbackup
    mongoexport/mongoimport:將collection導(dǎo)出為json/csv格式數(shù)據(jù)/將數(shù)據(jù)導(dǎo)入數(shù)據(jù)庫(kù),類似mysqldump/mysqlimport
    bsondump:將bson格式的文件轉(zhuǎn)儲(chǔ)為json格式的數(shù)據(jù)
    mongos:分片路由,如果使用了sharding功能,則應(yīng)用程序連接的是mongos而不是mongod
    mongofiles:GridFS管理工具
    mongostat:實(shí)時(shí)監(jiān)控工具

最簡(jiǎn)單的,通過執(zhí)行mongod即可以啟動(dòng)MongoDB數(shù)據(jù)庫(kù)服務(wù),mongod支持很多的參數(shù),但都有默認(rèn)值,其中最重要的是需要指定數(shù)據(jù)文件路徑,或者確保默認(rèn)的/data/db存在并且有訪問權(quán)限,否則啟動(dòng)后會(huì)自動(dòng)關(guān)閉服務(wù)。Ok,那也就是說,只要確保dbpath就可以啟動(dòng)MongoDB服務(wù)了:

$ ./mongod --dbpath /tmp
Fri Apr  1 00:34:46 [initandlisten] MongoDB starting : pid=31978 port=27017 dbpath=/tmp 32-bit

** NOTE: when using MongoDB 32 bit, you are limited to about 2 gigabytes of data
**       see http://blog.mongodb.org/post/137788967/32-bit-limitations
**       with --dur, the limit is lower

Fri Apr  1 00:34:46 [initandlisten] db version v1.8.0, pdfile version 4.5
Fri Apr  1 00:34:46 [initandlisten] git version: 9c28b1d608df0ed6ebe791f63682370082da41c0
Fri Apr  1 00:34:46 [initandlisten] build sys info: Linux ning 2.6.36-ningoo #1 SMP
Wed Nov 17 21:45:13 CST 2010 i686 BOOST_LIB_VERSION=1_42
Fri Apr  1 00:34:46 [initandlisten] waiting for connections on port 27017
Fri Apr  1 00:34:46 [websvr] web admin interface listening on port 28017

mongod的主要參數(shù)有:

dbpath: 數(shù)據(jù)文件存放路徑,每個(gè)數(shù)據(jù)庫(kù)會(huì)在其中創(chuàng)建一個(gè)子目錄。用于防止同一個(gè)實(shí)例多次運(yùn)行的mongod.lock也保存在此目錄中。
logpath:錯(cuò)誤日志文件
logappend: 錯(cuò)誤日志采用追加模式(默認(rèn)是覆寫模式)
bind_ip: 對(duì)外服務(wù)的綁定ip,一般設(shè)置為空,及綁定在本機(jī)所有可用ip上,如有需要可以單獨(dú)指定
port: 對(duì)外服務(wù)端口。Web管理端口在這個(gè)port的基礎(chǔ)上+1000
fork: 以后臺(tái)Daemon形式運(yùn)行服務(wù)
journal:開啟日志功能,通過保存操作日志來降低單機(jī)故障的恢復(fù)時(shí)間,在1.8版本后正式加入,取代在1.7.5版本中的dur參數(shù)。
syncdelay: 執(zhí)行sync的間隔,單位為秒。
directoryperdb: 每個(gè)db存放在單獨(dú)的目錄中,建議設(shè)置該參數(shù)。
maxConns: 最大連接數(shù)
repairpath: 執(zhí)行repair時(shí)的臨時(shí)目錄。在如果沒有開啟journal,異常宕機(jī)后重啟,必須執(zhí)行repair操作。

在源代碼中,mongod的參數(shù)分為一般參數(shù),windows參數(shù),replication參數(shù),replica set參數(shù),以及隱含參數(shù)。上面列舉的都是一般參數(shù)。如果要配置replication,replica set等,還需要設(shè)置對(duì)應(yīng)的參數(shù),這里先不展開,后續(xù)會(huì)有專門的文章來講述。執(zhí)行mongo –help可以看到對(duì)大多數(shù)參數(shù)的解釋。但有一些隱含參數(shù),則只能通過看代碼來獲得(見db.cpp po:ptions_description hidden_options(“Hidden options”),隱含參數(shù)一般要么是還在開發(fā)中,要么是準(zhǔn)備廢棄,因此在生產(chǎn)環(huán)境中不建議使用。

可能你已經(jīng)注意到,mongod的參數(shù)中,沒有設(shè)置內(nèi)存大小相關(guān)的參數(shù),是的,mongodb使用os mmap機(jī)制來緩存數(shù)據(jù)文件數(shù)據(jù),自身目前不提供緩存機(jī)制。這樣好處是代碼簡(jiǎn)單,mmap在數(shù)據(jù)量不超過內(nèi)存時(shí)效率很高。但是數(shù)據(jù)量超過系統(tǒng)可用內(nèi)存后,則寫入的性能可能不太穩(wěn)定,容易出現(xiàn)大起大落,不過在最新的1.8版本中,這個(gè)情況相對(duì)以前的版本已經(jīng)有了一定程度的改善,具體請(qǐng)參考realzyy的測(cè)試。

這么多參數(shù),全面寫在命令行中則容易雜亂而不好管理。因此,mongod也和mysqld一樣支持將參數(shù)寫入到一個(gè)配置文本文件中,然后通過config參數(shù)來引用此配置文件:

./mongod --config /etc/mongo.cnf

至此,已經(jīng)成功的運(yùn)行了一個(gè)單機(jī)的mongodb實(shí)例。

原文地址:http://www.ningoo.net/html/2011/mongodb_in_a_nutshell_3.html




歡迎光臨 Chinaunix (http://72891.cn/) Powered by Discuz! X3.2