前端培訓-中級階段(50)- MongoDB 簡介、安裝數據庫、集合、文檔概念

前端最基礎的就是 HTML+CSS+Javascript。掌握了這三門技術就算入門,但也僅僅是入門,如今前端開發的定義已經遠遠不止這些。前端小課堂(HTML/CSS/JS),本着提高技術水平,打牢基礎知識的中心思想,咱們開課啦(每週四)。html

MongoDB 簡介

MongoDB 是一個基於分佈式文件存儲的數據庫。由 C++ 語言編寫。旨在爲 WEB 應用提供可擴展的高性能數據存儲解決方案。前端

MongoDB 是一個介於關係數據庫和非關係數據庫之間的產品,是非關係數據庫當中功能最豐富,最像關係數據庫的。mysql

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

MongoDB 安裝

windows

https://www.mongodb.com/try/download/community
選擇你喜歡的版本,或者直接用我選好的
https://fastdl.mongodb.org/wi...sql

使用 curl 下載文件 curl https://fastdl.mongodb.org/win32/mongodb-win32-x86_64-2008plus-3.2.22-signed.msi -o mongodb-win32-x86_64-2008plus-3.2.22-signed.msi

下載完成以後,就能夠無腦下一步了(windows就是這麼簡單)。固然咱們仍是要選擇一下安裝目錄的mongodb

  1. 打開咱們的 msi 文件,下一步,贊成協議
  2. 做爲開發咱們要定製一下 custom ,選擇一下安裝路徑
  3. 而後下一步等安裝完成吧。
  4. D:\create\mongodb\bin\mongod --dbpath E:\study\mongodb\db 找到咱們程序,指定一個數據存儲位置,開啓咱們的服務。(懶得配置 path 環境變量了)
  5. D:\create\mongodb\bin\mongo 進入交互式環境。這裏是一個 JavaScript shell
    image.png

linux

仍是上面那個地址,選擇一個合適的包。而後就是瘋狂敲命令shell

# 下載
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.2.22.tgz   

# 解壓
tar -zxvf mongodb-linux-x86_64-3.2.22.tgz
# 移動到指定位置
mv mongodb-linux-x86_64-3.2.22.tgz /usr/local/mongodb3

# 添加環境變量,也能夠用軟鏈接
export PATH=/usr/local/mongodb3/bin:$PATH

# 數據存儲目錄
mkdir -p /var/lib/mongo
# 日誌目錄
mkdir -p /var/log/mongodb

# 啓動服務
mongod --dbpath /var/lib/mongo --logpath /var/log/mongodb/mongod.log --fork

# 經常使用命令 
mongo
db # 查看當前數據庫對象或集合
show dbs # 顯示全部數據庫
use face_ai # 切換到對應的數據庫
show collections # 顯示全部的表
db.db_446a5305d94e2e9cbc7b6b00d7888e0d_login.find().limit(10).skip(80) # 查詢表,10條,從80位置開始

概念解析

mysql的術語(SQL) MongoDB的術語 解釋
database database 數據庫
table(表) collection(集合) 用來存放一些類似的數據,好比說存放全部用戶信息
row(記錄) document(文檔) 用來表示一個物體對象,好比說一我的的信息
column(字段) field(域) 用來表示物體信息的特徵,好比說人的年齡
index index 索引
table joins 連表
primary key primary key 主鍵
Mysqld/Oracle mongod 數據庫服務
mysql/sqlplus mongo 客戶端

能夠存在多個數據庫,每一個數據庫中能夠包含多個表,每一個表能夠包含不少條記錄,每條記錄能夠有不少字段。數據庫

MongoDB 數據庫

show dbs 命令能夠顯示全部數據庫。segmentfault

數據庫也經過名字來標識。數據庫名能夠是知足如下條件的任意UTF-8字符串。windows

  • 不能是空字符串("")。
  • 不得含有' '(空格)、.、$、/、和0 (空字符)。
  • 應所有小寫。
  • 最多64字節。

有一些數據庫名是保留的,能夠直接訪問這些有特殊做用的數據庫。

  • admin: 從權限的角度來看,這是"root"數據庫。要是將一個用戶添加到這個數據庫,這個用戶自動繼承全部數據庫的權限。一些特定的服務器端命令也只能從這個數據庫運行,好比列出全部的數據庫或者關閉服務器。
  • local: 這個數據永遠不會被複制,能夠用來存儲限於本地單臺服務器的任意集合
  • config: 當Mongo用於分片設置時,config數據庫在內部使用,用於保存分片的相關信息。

MongoDB 集合

文檔是一組鍵值(key-value)對(即 BSON)。 MongoDB 的文檔不須要設置相同的字段,而且相同的字段不須要相同的數據類型,這與關係型數據庫有很大的區別,也是 MongoDB 很是突出的特色。

須要注意的是:

  1. 文檔中的鍵/值對是有序的。
  2. 文檔中的值不只能夠是在雙引號裏面的字符串,還能夠是其餘幾種數據類型(甚至能夠是整個嵌入的文檔)。
  3. MongoDB區分類型和大小寫。
  4. MongoDB的文檔不能有重複的鍵。
  5. 文檔的鍵是字符串。除了少數例外狀況,鍵可使用任意UTF-8字符。

文檔鍵命名規範:

  • 鍵不能含有0 (空字符)。這個字符用來表示鍵的結尾。
  • .和$有特別的意義,只有在特定環境下才能使用。
  • 如下劃線"_"開頭的鍵是保留的(不是嚴格要求的)。

MongoDB 文檔

集合就是 MongoDB 文檔組,相似於 RDBMS (關係數據庫管理系統:Relational Database Management System)中的表格。

集合存在於數據庫中,集合沒有固定的結構,這意味着你在對集合能夠插入不一樣格式和類型的數據,但一般狀況下咱們插入集合的數據都會有必定的關聯性。

當第一個文檔插入時,集合就會被建立。

合法的集合名:

  • 集合名不能是空字符串""。
  • 集合名不能含有0字符(空字符),這個字符表示集合名的結尾。
  • 集合名不能以"system."開頭,這是爲系統集合保留的前綴。
  • 用戶建立的集合名字不能含有保留字符。有些驅動程序的確支持在集合名裏面包含,這是由於某些系統生成的集合中包含該字符。除非你要訪問這種系統建立的集合,不然千萬不要在名字裏出現$。

MongoDB 數據類型

https://www.runoob.com/mongodb/mongodb-databases-documents-collections.html

image.png

微信公衆號:前端linong

clipboard.png

參考文獻

  1. 前端培訓目錄、前端培訓規劃、前端培訓計劃
相關文章
相關標籤/搜索