MongoDB介紹及安裝

jopen 10年前發布 | 20K 次閱讀 MongoDB NoSQL數據庫

mongodb簡介


1、簡介

MongoDB是一個基于分布式文件存儲的數據庫。由C++語言編寫。旨在為WEB應用提供可擴展的高性能數據存儲解決方案。

MongoDB是一個介于關系數據庫和非關系數據庫之間的產品,是非關系數據庫當中功能最豐富,最像關系數據庫的。他支持的數據結構非常松散,是類 似json的bson格式,因此可以存儲比較復雜的數據類型。Mongo最大的特點是他支持的查詢語言非常強大,其語法有點類似于面向對象的查詢語言,幾 乎可以實現類似關系數據庫單表查詢的絕大部分功能,而且還支持對數據建立索引。

2、特點
它的特點是高性能、易部署、易使用,存儲數據非常方便。

主要功能特性有:
*面向集合存儲,易存儲對象類型的數據。
*模式自由。
*支持動態查詢。
*支持完全索引,包含內部對象。
*支持查詢。
*支持復制和故障恢復。
*使用高效的二進制數據存儲,包括大型對象(如視頻等)。
*自動處理碎片,以支持云計算層次的擴展性。
*支持RUBY,PYTHON,JAVA,C++,PHP,C#等多種語言。
*文件存儲格式為BSON(一種JSON的擴展)。
*可通過網絡訪問。

3、使用原理
所謂“面向 集合”(Collection-Oriented),意思是數據被分組存儲在數據集中,被稱為一個集合(Collection)。每個集合在數據庫中都有 一個唯一的標識名,并且可以包含無限數目的文檔。集合的概念類似關系型數據庫(RDBMS)里的表(table),不同的是它不需要定義任何模式 (schema)。

模式自由(schema-free),意味著對于存儲在mongodb數據庫中的文件,我們不需要知道它的任何結構定義。如果需要的話,你完全可以把不同結構的文件存儲在同一個數據庫里。

存儲在集合中的文檔,被存儲為鍵-值對的形式。鍵用于唯一標識一個文檔,為字符串類型,而值則可以是各種復雜的文件類型。我們稱這種存儲形式為BSON(Binary Serialized Document Format)。

4、實際應用
MongoDB服務端可運行在Linux、Windows或IOS平臺,支持32位和64位應用,默認端口為27017。推薦運行在64位平臺,因為MongoDB在32位模式運行時支持的最大文件尺寸為2GB。

</div>
BSON入門


1、概念

BSON(Binary Serialized Document Format)是一種類json的一種二進制形式的存儲格式,簡稱Binary JSON,它和JSON一樣,支持內嵌的文檔對象和數組對象,但是BSON有JSON沒有的一些數據類型,如Date和BinData類型。

BSON可以做為網絡數據交換的一種存儲形式,這個有點類似于Google的Protocol Buffer,但是BSON是一種schema-less的存儲形式,它的優點是靈活性高,但它的缺點是空間利用率不是很理想。

BSON有三個特點:輕量性、可遍歷性、高效性。

{“hello":"world"} 這是一個BSON的例子,其中"hello"是key name,它一般是cstring類型,字節表示是cstring::= (byte*) "/x00" ,其中*表示零個或多個byte字節,/x00表示結束符;后面的"world"是value值,它的類型一般是 string,double,array,binarydata等類型。

2、使用情況
MongoDB 使用了BSON這種結構來存儲數據和網絡數據交換。把這種格式轉化成文檔這個概念(Document),因為BSON是schema-free的,所以在 MongoDB中所對應的文檔也有這個特征,這里的一個Document也可以理解成關系數據庫中的一條記錄(Record),只是這里的 Document的變化更豐富一些,如Document可以嵌套。

MongoDB以BSON做為其存儲結構的一種重要原因是其可遍歷性。

3、例子
3.1 一個Document的BSON表示

{
    title:"MongoDB",
    last_editor:"192.168.1.122",
    last_modified:new Date("27/06/2011"),
    body:"MongoDB introduction",
    categories:["Database","NoSQL","BSON"],
    revieved:false }

這是一個簡單的BSON結構體,其中每一個element都是由key/value對組成的。

3.2 一個嵌套的例子

{
    name:"lemo",
    age:"12",
    address:{
        city:"suzhou",
        country:"china",
        code:215000 },
    scores:[
        {"name":"english","grade:3.0},
        {"name":"chinese","grade:2.0}  ]
}

這是一種相對復雜點的例子,其中包括了地址對象和分數對象數組,這里使用了嵌套文檔對象與文檔對象數據來表示單個學生的信息,這種嵌套的文檔結構要使用關系數據庫來做是比較復雜的。


Windows7下安裝MongoDB


1、下載

地址:http://www.mongodb.org/downloads(32位還是64位自行選擇)。
我下載的是:mongodb-win32-x86_64-2.4.5.zip

2、解壓
把mongodb-win32-x86_64-2.4.5.zip放到某個位置,解壓。我放的是D:\dev目錄。
解壓后的路徑為D:\dev\mongodb-win32-x86_64-2.4.5

3. 安裝準備
MongoDB默認的數據目錄為:C:\data\db。如果不用默認目錄,則需要在在mongod.exe命令后加--dbpath參數。
創建數據目錄。我創建的是D:\dev\mongodb-win32-x86_64-2.4.5\data\db
創建日志目錄及其文件。我創建的是D:\dev\mongodb-win32-x86_64-2.4.5\log及D:\dev\mongodb-win32-x86_64-2.4.5\log\log.txt。

4、啟動MongoDB
打開cmd窗口(cmd.exe),進入D:\dev\mongodb-win32-x86_64-2.4.5\bin,執行mongod.exe命令,見下圖。
mongod.exe --logpath=D:\dev\mongodb-win32-x86_64-2.4.5\log\log.txt --dbpath=D:\dev\mongodb-win32-x86_64-2.4.5\data\db
MongoDB介紹及安裝
--logpath 參數是設定日志文件的路徑。
--dbpath 參數是設定數據庫文件的存放路徑。
mongod.exe命令的所有參數選項可通過mongod.exe --help查看。

5、作為服務進行安裝
使用管理員權限打開windows的cmd窗口,進入D:\dev\mongodb-win32-x86_64-2.4.5\bin目錄。
mongod.exe --install --logpath=D:\dev\mongodb-win32-x86_64-2.4.5\log\log.txt --dbpath=D:\dev\mongodb-win32-x86_64-2.4.5\data\db
--install 參數是設定安裝為服務器
MongoDB介紹及安裝
設置為服務后,即可在cmd(管理員權限打開的windows cmd窗口)窗口用服務的方式啟動或停止MongoDB。
net start mongodb 啟動mongodb服務
net stop mongodb 啟動mongodb服務

6、進入shell環境界面
進入sheelMongoDB后,在cmd窗口進入D:\dev\mongodb-win32-x86_64-2.4.5\bin目錄,輸入mongo.exe,則可以進入shell環境界面。
MongoDB介紹及安裝

來自:http://www.cnblogs.com/linjiqin/category/497964.html

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!