Windows下安裝配置MongoDB

Windows下安裝配置MongoDB

一,介紹

MongoDB 是由C++語言編寫的,是一個基於分佈式文件存儲的開源數據庫系統。在高負載的狀況下,添加更多的節點,能夠保證服務器性能。javascript

MongoDB 將數據存儲爲一個文檔,數據結構由鍵值(key=>value)對組成。MongoDB 文檔相似於 JSON 對象。字段值能夠包含其餘文檔,數組及文檔數組。java

二,安裝配置

當前數據庫版本:Mongodb 4.0.5mongodb

第一步:下載MongoDB數據庫

第二步:安裝MongoDB數組

下載後雙擊該文件,按操做提示安裝便可。可是安裝過程當中,你能夠經過點擊 "Custom(自定義)" 按鈕來設置你的安裝目錄。安全

第三步:建立數據庫文件的存放位置服務器

在MongoDB下建立data,在data下再建立db:D:\MongoDB\data\db數據結構

由於啓動mongodb服務以前須要必須建立數據庫文件的存放文件夾,不然命令不會自動建立,並且不能啓動成功。app

第四步:啓動MongoDB服務分佈式

進入D:\MongoDB\bin目錄(注意:先輸入d:進入d盤,而後輸入cd D:\MongoDB\bin),而後輸入以下的命令啓動mongodb服務:mongod --dbpath D:\MongoDB\data\db,若是出現如下界面,表示啓動成功

27017是mongodb的默認端口號

參數            描述
--bind_ip         綁定服務IP,若綁定127.0.0.1,則只能本機訪問,不指定默認本地全部IP
--logpath         定MongoDB日誌文件,注意是指定文件不是目錄
--logappend         使用追加的方式寫日誌
--dbpath          指定數據庫路徑
--port            指定服務端口號,默認端口27017
--serviceName          指定服務名稱
--serviceDisplayName   指定服務名稱,有多個mongodb服務時執行。
--install            指定做爲一個Windows服務安裝。

第五步:配置MongoDB驗證

MongoDB 默認直接鏈接,無須身份驗證,若是當前機器能夠公網訪問,且不注意Mongodb 端口(默認 27017)的開放狀態,那麼Mongodb就會產生安全風險,被利用此配置漏洞,入侵數據庫。

配置MongoDB驗證,用於鏈接操做數據庫,提升安全性

1,管理員帳戶

建立管理員帳戶

1 use admin
2 
3 db.createUser(
4   {
5     user: "adminUser",
6     pwd: "adminPass",
7     roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
8   }
9 )

若是出現以下界面,則表示建立成功

驗證用戶

1 use admin
2 
3 db.auth("adminUser", "adminPass")

若是出現以下界面,則表示驗證成功

2,普通帳戶

建立普通帳戶

1 use jackson_YingQi
2 
3 db.createUser(
4   {
5     user: "myAdminUser",
6     pwd: "myAdminPass",
7     roles: [ { role: "readWrite", db: "jackson_YingQi" }]
8   }
9 )

 若是出現以下界面,則表示建立成功

驗證用戶

1 use jackson_YingQi
2 
3 db.auth("myAdminUser", "myAdminPass")

若是返回1,表示驗證成功

三,安裝配置可視化工具

   可視化工具還方便操做與查看

第一步:下載Robo 3T

第二步:安裝Robo 3T

一直點擊下一步便可,可自定義安裝路徑

第三步:配置建立鏈接

1,打開Robo 3T ,點擊「create」建立一個到mongoDB的鏈接。 

2,給建立的鏈接新建一個名稱,並填上數據庫的ip和端口。默認是localhost

3,鏈接成功以後,插入數據,編輯以後再保存就能夠。 

 查看剛纔插入的數據

四,經常使用命令

4.1,內置角色

  1. Read:容許用戶讀取指定數據庫
  2. readWrite:容許用戶讀寫指定數據庫
  3. dbAdmin:容許用戶在指定數據庫中執行管理函數,如索引建立、刪除,查看統計或訪問system.profile
  4. userAdmin:容許用戶向system.users集合寫入,能夠找指定數據庫裏建立、刪除和管理用戶
  5. clusterAdmin:只在admin數據庫中可用,賦予用戶全部分片和複製集相關函數的管理權限。
  6. readAnyDatabase:只在admin數據庫中可用,賦予用戶全部數據庫的讀權限
  7. readWriteAnyDatabase:只在admin數據庫中可用,賦予用戶全部數據庫的讀寫權限
  8. userAdminAnyDatabase:只在admin數據庫中可用,賦予用戶全部數據庫的userAdmin權限
  9. dbAdminAnyDatabase:只在admin數據庫中可用,賦予用戶全部數據庫的dbAdmin權限。
  10. root:只在admin數據庫中可用。超級帳號,超級權限

4.2,命令

  1. show dbs 顯示所有的數據庫
  2. use dbName(數據庫名)進入數據庫(若沒有則是建立數據庫)
  3. db 輸出當前在哪一個庫
  4. show tables 查看錶

4.3,MongoDB數據類型

$type操做符是基於BSON類型來檢索集合中匹配的數據類型,並返回結果。

Type Number Alias Notes
Double 1 「double」  
String 2 「string」  
Object 3 「object」  
Array 4 「array」  
Binary data 5 「binData」  
Undefined 6 「undefined」 Deprecated.
ObjectId 7 「objectId」  
Boolean 8 「bool」  
Date 9 「date」  
Null 10 「null」  
Regular Expression 11 「regex」  
DBPointer 12 「dbPointer」 Deprecated.
JavaScript 13 「javascript」  
Symbol 14 「symbol」 Deprecated.
JavaScript (with scope) 15 「javascriptWithScope」  
32-bit integer 16 「int」  
Timestamp 17 「timestamp」  
64-bit integer 18 「long」  
Decimal128 19 「decimal」 New in version 3.4.
Min key -1 「minKey」  
Max key 127 「maxKey」
相關文章
相關標籤/搜索