一、下載及安裝MongoDB MongoDB下載官網鏈接:http://www.mongodb.org/downloads 具體安裝步驟教程:http://www.shouce.ren/api/view/a/6191(PS:該鏈接中對MongoDB安裝講解比較詳細,通俗易懂。安裝教程鏈接是我從手冊網 ...
一、下載及安裝MongoDB
MongoDB下載官網鏈接:http://www.mongodb.org/downloads
具體安裝步驟教程:http://www.shouce.ren/api/view/a/6191(PS:該鏈接中對MongoDB安裝講解比較詳細,通俗易懂。安裝教程鏈接是我從手冊網上找到的,下麵的總結知識點也是本人從中學習後歸納的一部分,有興趣的同學不妨收藏一下~)
二、MongoDB可視化工具下載
個人比較習慣在圖形化界面進行相關命令操作,所以在安裝完MongoDB後,就順便找了一個MongoDB可視化工具安裝使用。MongoDB可視化工具比較多,通過查找網上相關博客和帖子,發現mongobooster這個可視化工具比較受歡迎。
Mongobooster官網下載鏈接:http://mongobooster.com/downloads(記得當時從官網下載時,網速超慢,下麵附一個本人當時下載下來的一個版本的百度雲鏈接)
Mongobooster百度雲鏈接:http://pan.baidu.com/s/1jIhnwVW 密碼:wgxw
Mongobooster安裝後具體界面(PS:和使用mysql相關可視化工具很像,用著很不錯):
三、MongoDB基本概念及與關係型數據區別
MongoDB資料庫基本概念:
關係型資料庫 |
MongoDB |
database(資料庫) |
database(資料庫) |
table(表) |
collection(集合) |
row(行) |
document(文檔) |
column(列) |
filed(域) |
index(索引) |
index(索引) |
table joins(表關係) |
無 |
primary key(主鍵) |
自動將_id欄位設置為主鍵 |
MongoDB常用的數據類型:
數據類型 |
描述 |
String |
字元串,存儲數據常用的數據類型,在MongoDB中,UTF-8編碼才是合法的 |
Integer |
整型數值,用於存儲數值,根據你所採用的伺服器,可分為32位或64位 |
Boolen |
布爾值,用於存儲布爾值(真/假) |
Double |
雙精度浮點值,用於存儲浮點值 |
Min/Max keys |
將一個值與BSON(二進位的JSON)元素的最低值和最高值相對比 |
Arrays |
用於將數組或列表或多個值存儲為一個鍵 |
Timestamp |
時間戳,記錄文檔修改或添加的具體時間 |
Object |
用於內嵌文檔 |
Null |
用於創建空值 |
Symbol |
符號。該數據類型基本上等同於字元串類型,但不同的是,它一般用於採用特殊符號類型的語言 |
Date |
日期時間,用unix時間格式來存儲當前日期或時間。你可以指定自己的日期時間:創建Date對象,傳入年月日信息 |
Object ID |
對象 ID,用於創建文檔的 ID |
Binary Data |
二進位數據,用於存儲二進位數據 |
Code |
代碼類型,用於在文檔中存儲 JavaScript 代碼 |
Regular expression |
正則表達式類型,用於存儲正則表達式 |
MogoDB常用操作命令:
1、創建資料庫:use db_name(例如:use library,創建一個資料庫名稱為library的資料庫)
2、查看系統所有資料庫:show dbs
3、刪除資料庫:先使用具體資料庫,使用命令use db_name(PS:該命令在有db_name資料庫條件下不會創建資料庫,沒有則重新創建一個db_name資料庫),然後使用命令db.dropDatabase()命令
4、插入文檔:db.collection_name.insert(document)
5、查看文檔:db.collection_name.find()
6、更新文檔:db.collection_name.update(<query>,<update>,{upsert:<boolen>,multi:<boolen>,writeConcern:<boolen>})
7、刪除文檔:db.collection_name.remove(<query>,<justOne>)
MongoDB操作語句與關係型SQL語句比照對應表:
操作 |
格式 |
範例 |
RDBMS中的類似語句 |
等於 |
{<key>:<value>} |
db.col.find({"by":"菜鳥教程"}).pretty() |
where by = '菜鳥教程' |
小於 |
{<key>:{$lt:<value>}} |
db.col.find({"likes":{$lt:50}}).pretty() |
where likes < 50 |
小於或等於 |
{<key>:{$lte:<value>}} |
db.col.find({"likes":{$lte:50}}).pretty() |
where likes <= 50 |
大於 |
{<key>:{$gt:<value>}} |
db.col.find({"likes":{$gt:50}}).pretty() |
where likes > 50 |
大於或等於 |
{<key>:{$gte:<value>}} |
db.col.find({"likes":{$gte:50}}).pretty() |
where likes >= 50 |
不等於 |
{<key>:{$ne:<value>}} |
db.col.find({"likes":{$ne:50}}).pretty() |
where likes != 50 |