MongoDB 是一款很是熱門的NoSQL,面向文檔的數據庫管理系統,官方下載地址是:MongoDB,我選擇的是 Enterprise Server (MongoDB 3.2.9)版本,安裝在Windows Server 2012環境中。mongodb
MongoDB使用BSON對象來存儲,與JSON格式類型的鍵值對(key/value)相似,MongoDB數據庫和關係型DB的存儲模型對應關係:shell
NoSQL 數據庫的理論基礎是CAP 理論,分別表明 Consistency(強一致性),Availability(可用性),Partition Tolerance(分區容錯),分佈式數據系統只能知足其中兩個特性:數據庫
在構建分佈式系統時,必須考慮CAP特性。傳統的關係型DB,注重的是CA特性,數據通常存儲在一臺Server上。而處理海量數據的分佈式存儲和處理系統更注重AP,AP的優先級要高於C,但NoSQL並非徹底放棄一致性(Consistency),NoSQL保留數據的最終一致性(Eventually Consistency)。最終一致性是指更新操做完成以後,用戶最終會讀取到數據更新以後的值,可是會存在必定的時間窗口,用戶仍會讀取到更新以前的舊數據;在必定的時間延遲以後,數據達到一致性。瀏覽器
一,設置Path環境變量服務器
在Windows 環境中,MongoDB默認的安裝文件存儲目錄是:C:\Program Files\MongoDB\Server\3.2\bin,點擊 Windows+R,輸入cmd,啓動Command Prompt,進入到安裝目錄:分佈式
每次打開Command Prompt都須要進入到MongoDB的安裝目錄十分麻煩,能夠修改Computer的Environment Variables,右擊This PC->Properties,依次點擊 Advanced System Setting->Environment Variables,打開Environment Variables 窗體,修改 Path 系統變量,在 Path 變量的字符串後面追加"C:\Program Files\MongoDB\Server\3.2\bin",注意兩個Path之間以「;」分割。ide
二,帶你入門工具
1,啓動MongoDB實例學習
環境變量設置成功以後,在C盤中建立一個文件夾data,用於存儲MongoDB的數據庫文件。而後,打開一個命令行工具,輸入mongod 啓動MongoDB實例,默認監聽的TCP端口是 27017 。命令行
mongod
MongoDB同時啓動一個HTTP服務器,監聽27017端口,若是MongoDB 實例安裝在本地,那麼在瀏覽器中輸入:http://localhost:27017/
mongod 是整個MongoDB最核心的進程,負責數據庫的建立,刪除等管理操做,運行在服務器端,監聽客戶端的請求,提供數據服務。
2,連接到MongoDB 實例
不要關閉MongoDB實例,新打開一個命令行工具,輸入mongo ,該命令啓動mongo shell,shell 將自動鏈接本地(localhost)的MongoDB實例,默認的端口是27017:
mongo
mongo進程是構造一個Javascript Shell,用於跟mongod進程交互,根據mongod提供的接口對MongoDB數據庫進行管理,至關於SSMS(SQL Server Management Studio),是一個管理MongoDB的工具。
3,查看當前鏈接的DB
使用命令查看正在鏈接的數據庫名字
db
db.getName()
4,查看MongoDB實例中的db 和 collection
show dbs show collections
db.getCollectionNames()
5,切換db
use foo
6,在foo數據庫中建立users集合,向集合中插入一條document
use foo db.users.insert({"name":"name 1",age:21}) db.users.find()
7,關閉MongoDB 實例
在mongo shell中,執行如下命令,關閉MongoDB實例
use admin db.shutdownServer()
8,幫助命令
help
db.help()查看數據庫級別的幫助
db.mycoll.help()查看集合級別的幫助
三,mongod 命令經常使用參數
1,經常使用參數
mongod 是MongoDB系統的主要守護進程,用於處理數據請求,數據訪問和執行後臺管理操做,必須啓動,才能訪問MongoDB數據庫。
在啓動mongod時,經常使用的參數是:
2,MongoDB的啓動方式
2.1 以命令方式啓動,默認的dbpath是 C:\data\db
mongod --dbpath=C:\data\db
2.2 以配置文檔的方式啓動
將mongod的命令參數寫入配置文檔,以參數-f 啓動
mongod -f C:\data\db\mongodb_config.config
2.3 以daemon方式啓動
當啓動MongoDB的進程關閉後,MongoDB隨之關閉,只須要使用--fork參數,就能使MongoDB之後臺守護進程方式啓動。
mongod -fork
3,查看mongod的啓動參數
db.serverCmdLineOpts()
四,mongo命令經常使用參數
mongo 是一個交互式的js shell,提供了一個強大的js 環境,爲DBA管理MongoDB,developer查詢MongoDB數據提供接口。經過mongo shell和MongoDB進行交互,查詢和修改MongoDB數據庫,管理MongoDB數據庫,維護MongoDB的副本集和分片集羣,是一個很是強大的工具。
在啓動mongo shell時,經常使用的參數是:
五,MongoDB的可視化工具
1,推薦 Robomongo
Robomongo 是開源,免費的MongoDB管理工具,下載地址:Robomongo下載
2,MongoBooster
支持MongoDB 3.2 版本,我的使用免費,用於商業收費,下載地址:MongoBooster下載
六,學習MongoDB
1,推薦學習MongoDB書籍
動物書《MongoDB權威指南-第二版》,很是經典
2,學習MongoDB的官方手冊: MongoDB Manual
3,學習MongoDB的入門教程:MongoDB Tutorial
參考文檔: