Mongodb 的安裝配置使用(Windows)

? Mongodb 是一個文檔集合數(shù)據(jù)庫,存儲數(shù)據(jù)格式為: 庫 -> 集合(Collection) -> JSON格式文檔(Documents) -> JSON 文檔中的每個 Key 為 Field

其中每個格式名稱對標(biāo)關(guān)系型數(shù)據(jù)庫的是: 庫對應(yīng)的就是庫,Collection 對應(yīng)的是表,每行 Document 對應(yīng)的是表中的每行數(shù)據(jù), 每個 Field 對應(yīng)的就是關(guān)系型數(shù)據(jù)庫中的"字段";但是它與關(guān)系型數(shù)據(jù)庫不同的是,它的每個 Document 即表中的字段,可以不同,這也就成了它好擴(kuò)展的特點。

1、安裝

官網(wǎng)下載 地址選擇要對應(yīng)系統(tǒng)環(huán)境的版本下載,其中有兩種版本區(qū)分,社區(qū)版企業(yè)版,本次使用的是社區(qū)版環(huán)境是在 Windows 中做的一個安裝,直接下的 MSI 格式的安裝包,界面化點擊即可。

  • 配置環(huán)境變量

    在所選擇的 mongodb 安裝目錄之中,進(jìn)入到安裝目錄的 bin 文件夾,拷貝全目錄名,配置到環(huán)境變量中的 Path 之中,本例中是將其安裝在了 D 盤的 soft 目錄下,所以配置在 Path 中的內(nèi)容如下

    D:\soft\mongodb\bin
    
  • 服務(wù)啟動

    其實如果你是用的 Windows 的 msi 安裝包,在安裝完之后是默認(rèn)啟動了的

    1、通過已安裝的服務(wù),界面啟動

    可以在運行窗口(win+R) ,輸入 services.msc 回車呼出服務(wù)控制窗口,在里面可以找到 MongoDB Server 這個服務(wù),你可以點擊右鍵選擇啟動即可。

    2、通過 net 命令啟動

    在 Mongodb 服務(wù)關(guān)閉的情況下可以在運行窗口(win+R) , 輸入以下命令即可啟動:

    net start mongodb
    

    3、通過指定配置文件啟動(需要配置好環(huán)境變量)

    在 mongodb 的安裝目錄,bin 目錄下有服務(wù)啟動程序 —— mongod.exe、客戶端啟動程序 —— mongo.exe,mongodb 配置文件 —— mongod.cfg(安裝時設(shè)置的配置都在這),打開 CMD 窗口,輸入:

    mongod --config D:\soft\mongodb\bin\mongod.cfg
    
  • mongodb 命令行使用

    在 CMD 窗口中輸入,mongo 即可啟動 mongodb 的 shell 程序, 可看到如下信息,鏈接到默認(rèn)端口:27017

    MongoDB shell version v4.0.10
    connecting to: mongodb://127.0.0.1:27017/?gssapiServiceName=mongodb
    Implicit session: session { "id" : UUID("91cb60c2-e828-4a2b-af57-4ccea51a6a9b") }
    MongoDB server version: 4.0.10
    Server has startup warnings:
    2019-07-19T10:26:25.869+0800 I CONTROL [initandlisten]
    2019-07-19T10:26:25.869+0800 I CONTROL [initandlisten] ** WARNING: Access control is not enabled for the database.
    2019-07-19T10:26:25.869+0800 I CONTROL [initandlisten] ** Read and write access to data and configuration is unrestricted.

    2019-07-19T10:26:25.869+0800 I CONTROL [initandlisten]

2、使用

  • 創(chuàng)建庫與表

    創(chuàng)建數(shù)據(jù)庫,這里和常見的關(guān)系數(shù)據(jù)庫一樣,需要建立自己的數(shù)據(jù)空間(庫),Mongodb 的設(shè)計是偏向于程序員的,建庫、建立集合、修改文檔都很有意思,為什么這么說,是因為在常見的關(guān)系型數(shù)據(jù)庫中當(dāng)你要使用的庫或者表不存在的時候,是會直接提醒你該表或者庫不存在,然而 mongodb 的做法卻是當(dāng)你要使用的庫、表不存在時,它直接幫你創(chuàng)建好,這種方式雖然方便,但是使用不當(dāng)會有很大的隱患!

    • 創(chuàng)建一個 mongodbtest 庫: use mongodbtest

      -- 輸入命令后的結(jié)果
      > use mongodbtest
      switched to db mongodbtest
      

      在此你從提示語之中壓根看不出來 mongodbtest 這個庫是之前不存在的,輸入命令: db 可查看當(dāng)前所在的庫

      > db
      mongodbtest
      
    • 創(chuàng)建一個名為 jsonval 的集合: db.jsonval

    • 向集合(Collection) jsonval 插入數(shù)據(jù)

      插入一行數(shù)據(jù)

       db.jsonval.insertOne({"name":"Tony","age":25,"habby":"Have a haircut"})
      

      插入多行數(shù)據(jù)

      db.jsonval.insertMany([{"name":"達(dá)芬奇","age":67,"habby":"繪畫、音樂、建筑、數(shù)學(xué)、幾何學(xué)。。。"},{"name":"拉斐爾","age":37,"habby":"繪畫"}])
      
  • 查詢數(shù)據(jù)

    無條件查找數(shù)據(jù), 返回該 Collection 的所有數(shù)據(jù)

    db.jsonval.find()
    

    查找指定條件的數(shù)據(jù)

    db.jsonval.find({"name":"Tony"})
    -- 查找指定條件一行的內(nèi)容
    db.jsonval.findOne({"age":25})
    

    查找指定區(qū)間條件的數(shù)據(jù), 查找年齡大于20,小于37的數(shù)據(jù)

    db.jsonval.find({"age":{"$gt":20,"$lt":37}})
    
  • 修改數(shù)據(jù)

    修改單條數(shù)據(jù)

    db.jsonval.updateOne({"name":"Tony"},{$set:{"age":30}})
    

    修改多條數(shù)據(jù)

    db.jsonval.updateMany({"age":25},{$set:{"age":23}})
    

    修改,還可以在原有的基礎(chǔ)上增加一個不存在的字段

    db.jsonval.updateMany({"age":23},{$set:{"age":25,"country":"中國"}})
    
  • 刪除數(shù)據(jù)

    帶條件刪除數(shù)據(jù)

    db.jsonval.remove({"name":"Tony"})
    db.jsonval.remove({"name":"Mark","age":25})
    

    刪除全部數(shù)據(jù)

    db.jsonval.remove({})
    
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容