1. 程式人生 > >對於mongodb在linux上的的安裝與其簡單命令列操作的學習回顧

對於mongodb在linux上的的安裝與其簡單命令列操作的學習回顧

    今天培訓主要學習了MongoDB的安裝與簡單操作以及關於NoSQL的一點概念性的知識,在此對所操作的MongoDB命令進行簡單回顧

1.MongoDB的安裝

與網上的教程無太多出入,Linux系統下直接通過終端輸入命令列

sudo apt-get install mongodb

即可。本人這個下載過程還是比較順利的,沒有報錯。不過授課師兄提到一個他下載時裝了n遍不成功的坑,最後各種百度和查資料發現這個mongodb下載會預設吃掉3G的記憶體,hold不住的要通過輸入命令使得它構建的比較小型,所以要注意一下。

ps:較深感受是以後這種下載軟體的操作提前自行完成較好,學校實驗室wifi速度讓我在這花了一個小時多(淚目)

2.mongodb簡單操作

下載完成後第一步就是通過終端連線mongodb啦,這個操作也十分簡單,直接輸入mongo即可

操作成功後如圖,可以知道這個版本是2.6.10以及連線的是test這個資料庫

接下來,可以進行

show collections

檢視已有的集合,也就是類似於表的東西,可以得到如圖

所得第一行是本人已經建了的一個集合,第二行是系統一個類似索引的東西

很自然的,進入這個庫,我們可以進行一個建集合的操1

db.createCollections("表名")    例:db.createCollections("Club") ,建表成功的話會返回{“ok”,1}的命令

鑑於此處已操作過,就省略這個步驟了

那麼,首先,我們來進行增刪查改中這個查的操作

輸入命令

db.Club.find()

可以檢視到Club這個表中的資料如圖

這個排布不是很友好,我們可以再對這條命令加點東西

db.Club.find().pretty()

再次顯示的如圖

這樣我們就得到了一個很pretty的顯示了

那麼,對於mongodb這種專門針對大規模資料的分散式資料庫來說,帶特定條件的查詢是必不可少的功能了

這種操作我們就將所要查詢的條件在find()中新增引數來實現了

首先,我們通過key:value這種鍵值對形式進行查詢

db.Club.find({"name":"qinshihao"})

結果會返回這個name:qinshihao的整條資料如圖

還可以進行條件性的查詢

db.Club.find({"age":{$lt:23}})

這裡進行的是一個對年齡小於23的查詢,結果如圖

切忌不能直接在括號內輸入“age”<23,一定要按照格式才能完成條件搜尋,其中

gt : 大於 ; lt: 小於 ; gte: 大於等於; lte: 小於等於

最後我們嘗試一個對條件進行模糊搜尋的操作

db.Club.find({"name":/hao/})

那麼接下來,我們可以嘗試進行增的操作,也是非常的簡單

db.Club.insert({"name":"wujiacheng","age":28,"job":"AndroidEngineer"})

其中{}內是所插入的內容,完成後會出現

WriteResult(“nInserted”:1)

我們可以再進行一次查的操作進行檢視,結果如圖

接下來進行一個改的操作

先看一下師兄給的文字資料

db.collection.update(criteria, objNew, upsert, multi)
criteria: update的查詢條件, 類似sql update 查詢內where 後面的;
objNew: update 的物件和一些更新的操作符等,也可以理解為sql update查詢內set後面的
upset: 這個引數的意思是, 如果不存在update的記錄, 是否插入objNew, true為插入, 預設是false, 不插入.
Multi: mongodb預設是false, 只更新找到的第一條記錄, 如果這個引數為true, 就把按條件查出來多條記錄全部更新.
例子:db.quincyDB.update({"age":22},{$set:{"name":"quincy"}},false, false);

根據上述我們進行一下操作

db.Club.update({"name"="wujiacheng"},{$set:{"job":"KingOfAndroid"}},false,false)

那麼可以看到我們這個改的操作是成功的。

主要我們這個學習的過程中資料量較小,後面兩個引數直接false了,如果實際進行專案工作時應注意對後兩個引數的把控,還有就是這個操作中各類小括號中括號冒號的輸入比較多,進行命令列操作時要多加註意

最後我們進行一個刪的操作

db.Club.remove({"age":38})

得到

那麼我們這個age為38的整條資料就完成了刪除的操作

總結:在這個Linux的終端上操作mongodb其實難度不大,主要的增刪查改的操作語句上面都是大同小異,主要還是要注意多重括號的輸入規範以免命令錯誤,希望在以後的學習過程中能夠多多練習吧。