MongoDB 是一個基於分佈式文件存儲的數據庫。由 C++ 語言編寫。旨在爲 WEB 應用提供可擴展的高性能數據存儲解決方案。
MongoDB 是一個介於關係數據庫和非關係數據庫之間的產品,是非關係數據庫當中功能最豐富,最像關係數據庫的。linux
Mac下面安裝MongoDB。有兩種方式一種從官網下載安裝安裝,下載地址
另一種是使用Mac上面的神器"brew"來安裝。mongodb
#安裝mongodb brew install mongodb
#下載mongodb curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.0.6.tgz #解壓 tar -zxvf mongodb-linux-x86_64-3.0.6.tgz #移動到/usr/local/mongodb sudo mv mongodb-linux-x86_64-3.0.6/ /usr/local/mongodb #添加到PATH路徑中 export PATH=/usr/local/mongodb/bin:$PATH
sudo mkdir -p /data/db
#這種啓動方式會隨終端的關閉致使mongodb也關閉 sudo ./mongod #後臺啓動 --logpath制定日誌位置 sudo ./mongod --fork --logpath /var/log/mongod.log
#語法use DATABASE_NAME 不存在就建立,存在則切換 use db-test
#刪除當前數據庫 db.dropDatabase()
#這裏集合能夠理解關係型數據庫裏面的表的概念 db.createCollection("test")
#{}裏面爲Json格式。請注意"" db.test.insert({"name":"小紅","age":"10"}) db.test.insert({"name":"小藍","age":"11"}) db.test.insert({"name":"小白","age":"12"}) db.test.insert({"name":"小紫","age":"13"}) db.test.insert({"name":"小綠","age":"14"})
#查詢test這個集合裏面全部數據 db.test.find() #根據條件查詢數據。只查詢名字叫作小白的行 db.test.find({"name":"小白"}) #查詢年齡大於11的行 $gt 爲操做符。見下面的操做符 db.test.find({"age":{$gt:"11"}})
#大於 $gt #小於 $lt #大於等於 $gte #小於等於 $lte
#修改小紅的年齡爲20。update爲修改,save爲替換 db.test.update({'name':'小紅'},{$set:{"age":'20'}})
#刪除名字爲小紅的行 db.test.remove({'name':'小紅'}) #刪除test集合下面全部數據 db.test.remove({})
#以年齡排序 1爲升序排列,-1是用於降序排列 #db.test.find().sort({"age":-1})
#獲取前3行數據 db.test.find().limit(3) #按照年齡降序 獲取前3條 db.test.find().sort({"age":-1}).limit(3)
#備份db-test到/home/ubuntu目錄下 mongodump -d db-test -o /home/ubuntu
#從/home/ubuntu目錄下面備份還原db-test數據庫。 mongorestore -d db-test /home/ubuntu
雖然mongodb提供了shell查詢工具。可是在平常開發過程爲了方便快速開發和使用。通常會用到圖形化管理工具。這裏以robomongo爲列。官網下載地址。下載安裝完成以後。打開robomongo。
點擊created,而後輸入mongodb地址。默認地址localhost,端口爲27017.而後點擊save.
這樣咱們就能夠經過robomongo很方便管理數據庫了。後面還會繼續分享一些在使用mongodb中遇到的問題。shell