最近在學(xué)習(xí)使用mongodb,發(fā)現(xiàn)它內(nèi)存占用厲害,網(wǎng)上搜索了一下發(fā)現(xiàn)很多都利用use admin;db.runCommand({closeAllDatabases:1})來清除內(nèi)存,我在3.0中發(fā)現(xiàn)沒有該命令,
是3.0中取消了該命令還是我的打開的方法不對,查看了一下手冊也沒有發(fā)現(xiàn)類似的替代命令,請問最新版本中還有該命令么?如果有的話,應(yīng)該怎么使用呢?
最近也在學(xué)習(xí)mongodb,推薦你個(gè)mongodb學(xué)習(xí)資料http://www.hubwiz.com/course/54bdfcb188dba012b4b95c9c/
很多人覺得數(shù)據(jù)庫占用內(nèi)存多有問題,其實(shí)這根本不是一個(gè)問題,不需要解決。
首先,數(shù)據(jù)庫的首要任務(wù)是管理數(shù)據(jù),如何更快地提供數(shù)據(jù)查詢是所有數(shù)據(jù)庫需要解決的問題。而各家的解決方案幾乎是一致的,無論是SQLServer,MySQL,MongoDB,無一例外地用空間換效率。通俗地講,都是盡可能多地使用內(nèi)存,把所有有用的東西(索引,數(shù)據(jù)等)盡量加載到內(nèi)存以提高運(yùn)行速度。所以,這絕對不是一個(gè)Bug,而是期望行為。反過來想,如果一個(gè)數(shù)據(jù)庫為了節(jié)省內(nèi)存而運(yùn)行緩慢,這就違背一個(gè)數(shù)據(jù)庫的基本宗旨了。
搞清楚了這點(diǎn),再來看你的問題。
參考資料:
Does MongoDB require a lot of RAM?
How do you empty the buffers and cache on a Linux system?