mongodb
nosql的簡介
nosql是not only sql的縮寫,它不一定遵循傳統資料庫的一些基本要求,比如說sql標準、acid屬性、表結構等等。
主要有這些特點:
非關係型的、
分布式的、
開源的、
水平可擴充套件的。
mongodb的簡介:
- 適用場合
快取:由於效能很高,mongodb 也適合作為資訊基礎設施的快取層
大尺寸,低價值的資料:使用傳統的關係型資料庫儲存一些資料時可能會比較昂貴,在此之前,很多時候程式設計師往往會選擇傳統的檔案進行儲存。
高伸縮性的場景:mongodb 非常適合由數十或數百台伺服器組成的資料庫。
用於物件及json資料的儲存:mongodb 的bson資料格式非常適合文件化格式的儲存及查詢。
- 不適用場合
高度事務性的系統:例如銀行或會計系統。傳統的關係型資料庫目前還是更適用於需要大量原子性複雜事務的應用程式。
傳統的商業智慧型應用:針對特定問題的bi資料庫會對產生高度優化的查詢方式。對於此類應用,資料倉儲可能是更合適的選擇。
需要sql的場景
事務:一系列操作,要麼都做要麼都不做,如果中間被打斷,就回滾
mongodb的應用
基本原理
-三層基本資料層次結構:資料庫(database)/集合(collection)/文件(document)
-mongodb資料型別:
null
布林 ture|false
整數 123
浮點 12.3
字串 「hello world」
物件id 用 new objectid()來申明。
日期 用 new date()來申明
時間戳內嵌文件 }
regexp 正規表示式 /[a-z]/
基本概念
基本操作
資料庫級別的操作:
help檢視命令提示
db.help();
切換/建立資料庫
use dbname當建立乙個集合的時候會自動建立當前資料庫
查詢所有資料庫
show dbs;
刪除當前使用資料庫
db.dropdatabase();
修復當前資料庫
db.repairdatabase();
檢視當前使用的資料庫
db.getname();
collection 級別操作:
建立乙個集合
db.createcollection(「collname」);
得到指定名稱的集合
db.getcollection("account");
得到當前db的所有集合
db.getcollectionnames();
show collections
顯示當前db所有集合的狀態
db.printcollectionstats();
刪除集合
db.collectionnames.drop()
MongoDB 簡介和快速搭建
先不廢話,先把mongodb裝好再說 wget tar zxvf mongodb linux x86 64 rhel70 3.2 5.tgz mv mongodb linux x86 64 rhel70 3.2 5 mongodb 建立必要的目錄 mkdir pv root mongodb 啟動 m...
mongoDB 安裝簡介
wget解壓到自定義的路徑下 tar zvxf path to mongodb臨時新增,在命令列輸入指令 export path path path to mongodb bin 將下面命令新增到 bashrc 檔案中 export path path path to mongodb bin 將上述...
MongoDB筆記 簡介
mongodb是乙個又新又舊的詞,不管你用還是不用,了解一下也是應該的。因為不同於 mysql oracle sqlserver 這些 經典資料庫 mongodb 是一種新的資料庫管理軟體。在這之前,如果你認為 mysql 是一種資料庫 那就應該重新了解一下資料庫的概念了。最明顯的不同是,mongo...