MongoDB 介紹及Windows下安裝

webphp 12年前發布 | 32K 次閱讀 MongoDB NoSQL數據庫

一、MongoDB簡介

        MongoDB是一個高性能,開源,無模式的文檔型數據庫,是當前NoSql數據庫中比較熱門的一種。它在許多場景下可用于替代傳統的關系型數據庫或鍵/值存儲方式。Mongo使用C++開發。Mongo的項目主頁地址是:http://www.mongodb.org/,讀者可以在此獲得更詳細的信息。

小插曲:什么是NoSql?

        NoSql,全稱是 Not Only Sql,指的是非關系型的數據庫。下一代數據庫主要解決幾個要點:非關系型的、分布式的、開源的、水平可擴展的。原始的目的是為了大規模web應用,這場 運動開始于2009年初,通常特性應用如:模式自由、支持簡易復制、簡單的API、最終的一致性(非ACID)、大容量數據等。NoSQL被我們用得最多 的當數key-value存儲,當然還有其他的文檔型的、列存儲、圖型數據庫、xml數據庫等。

        特點:

        高性能、易部署、易使用,存儲數據非常方便。主要功能特性有:

  • 面向集合存儲,易存儲對象類型的數據。
  • 模式自由。
  • 支持動態查詢。
  • 支持完全索引,包含內部對象。
  • 支持查詢。
  • 支持復制和故障恢復。
  • 使用高效的二進制數據存儲,包括大型對象(如視頻等)。
  • 自動處理碎片,以支持云計算層次的擴展性
  • 支持Python,PHP,Ruby,Java,C,C#,Javascript,Perl及C++語言的驅動程序,社區中也提供了對Erlang及.NET等平臺的驅動程序。
  • 文件存儲格式為BSON(一種JSON的擴展)。
  • 可通過網絡訪問。

        功能:

  • 面向集合的存儲:適合存儲對象及JSON形式的數據。
  • 動態查詢:Mongo支持豐富的查詢表達式。查詢指令使用JSON形式的標記,可輕易查詢文檔中內嵌的對象及數組。
  • 完整的索引支持:包括文檔內嵌對象及數組。Mongo的查詢優化器會分析查詢表達式,并生成一個高效的查詢計劃。
  • 查詢監視:Mongo包含一個監視工具用于分析數據庫操作的性能。
  • 復制及自動故障轉移:Mongo數據庫支持服務器之間的數據復制,支持主-從模式及服務器之間的相互復制。復制的主要目標是提供冗余及自動故障轉移。
  • 高效的傳統存儲方式:支持二進制數據及大型對象(如照片或圖片)
  • 自動分片以支持云級別的伸縮性:自動分片功能支持水平的數據庫集群,可動態添加額外的機器。

        適用場合:

  • 網站數據:Mongo非常適合實時的插入,更新與查詢,并具備網站實時數據存儲所需的復制及高度伸縮性。
  • 緩存:由于性能很高,Mongo也適合作為信息基礎設施的緩存層。在系統重啟之后,由Mongo搭建的持久化緩存層可以避免下層的數據源 過載。
  • 大尺寸,低價值的數據:使用傳統的關系型數據庫存儲一些數據時可能會比較昂貴,在此之前,很多時候程序員往往會選擇傳統的文件進行存儲。
  • 高伸縮性的場景:Mongo非常適合由數十或數百臺服務器組成的數據庫。Mongo的路線圖中已經包含對MapReduce引擎的內置支持。
  • 用于對象及JSON數據的存儲:Mongo的BSON數據格式非常適合文檔化格式的存儲及查詢。

二、下載安裝和配置

        安裝Mongo數據庫:

        在發布本文的時間官方提供的最新版本是:1.6.5 ,如果不做特殊聲明,本教程所用的版本將會是這個版本。

  1. 第一步:下載安裝包:官方下載地址←單擊此處,如果是win系統,注意是64位還是32位版本的,請選擇正確的版本。
  2. 第二步:新建目錄“D:\MongoDB”,解壓下載到的安裝包,找到bin目錄下面全部.exe文件,拷貝到剛創建的目錄下。
  3. 第三步:在“D:\MongoDB”目錄下新建“data”文件夾,它將會作為數據存放的根文件夾。

        配置Mongo服務端:

        打開CMD窗口,按照如下方式輸入命令:
        > d:
        > cd D:\MongoDB
        > mongod --dbpath D:\MongoDB\data

        配置成功后會看到如下畫面:
 MongoDB 介紹及Windows下安裝

        在瀏覽器輸入:http://localhost:27017/,可以看到如下提示:
You are trying to access MongoDB on the native driver port. For http diagnostic access, add 1000 to the port number

        如此,MongoDB數據庫服務已經成功啟動了。

三、后記

        要使MongoDB能在我們的C#代碼中被操作,還需要驅動,經常有朋友在網上copy代碼后發現編譯不通過,那估計是驅動不一致的問題了

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