MongoDB中文學習入門教程(包括安裝配置和增刪改查)
1. MongoDB簡介
MongoDB是一種面向文檔的無結(jié)構(gòu)化數(shù)據(jù)庫系統(tǒng),能夠存儲和處理大規(guī)模的半結(jié)構(gòu)化和無結(jié)構(gòu)化數(shù)據(jù)。它在NoSQL數(shù)據(jù)庫中屬于最常用的一種。與傳統(tǒng)的關(guān)系型數(shù)據(jù)庫不同,MongoDB不需要事先定義數(shù)據(jù)的結(jié)構(gòu),可以減少數(shù)據(jù)建模的復雜性。MongoDB使用JSON格式的文檔存儲數(shù)據(jù),這使得它非常適合存儲動態(tài)數(shù)據(jù)和大數(shù)據(jù)量的數(shù)據(jù)。 MongoDB是完全免費的,在開源社區(qū)上廣受歡迎。
1.1 MongoDB的數(shù)據(jù)結(jié)構(gòu)
在MongoDB中,數(shù)據(jù)存儲在文檔(Document)中,一個文檔可以看作是一個鍵值對的集合。每個鍵值對稱為一個字段(field),一個文檔可以包含不同數(shù)量和類型的字段。MongoDB的文檔格式為BSON,它是JSON的一種二進制形式,能夠更高效地進行解析和傳輸。下面是一個簡單的MongoDB文檔示例:
{
"_id": ObjectId("5cf39d0b7ad3cd1de5c1dd0a"),
"name": "張三",
"age": 25,
"address": {
"city": "北京",
"street": "朝陽區(qū)"
}
}在這個文檔中,_id是MongoDB自動生成的唯一標識符,name和age是字段名,它們的值分別為"張三"和25,address是一個子文檔,包含了city和street兩個字段。
1.2 MongoDB的優(yōu)點
相對于傳統(tǒng)的關(guān)系型數(shù)據(jù)庫,MongoDB具有以下優(yōu)點:
靈活性:MongoDB不需要事先定義數(shù)據(jù)模式,數(shù)據(jù)模式可以動態(tài)改變。
可擴展性:MongoDB支持分布式部署,可以在多個節(jié)點之間復制數(shù)據(jù)。
高性能:MongoDB使用BSON格式存儲數(shù)據(jù),能夠更高效地進行讀取和寫入。
易部署:MongoDB的安裝和配置非常簡單,只需要下載并解壓縮,不需要進行復雜的設置。
2. MongoDB的安裝和配置
2.1 下載MongoDB
在安裝MongoDB之前,首先需要從官方網(wǎng)站下載MongoDB的安裝包。
下載頁面地址:https://www.mongodb.com/download-center/community
在下載頁面中,選擇對應的操作系統(tǒng)和版本,然后下載并解壓縮安裝包。
2.2 配置MongoDB
在下載并解壓縮MongoDB安裝包后,我們需要對MongoDB進行配置。
MongoDB的配置文件為mongod.cfg,該文件默認位于MongoDB的安裝目錄下。我們可以修改該文件的一些配置選項來調(diào)整MongoDB的運行方式。
其中一些常見的選項包括:
dbpath:MongoDB數(shù)據(jù)存儲路徑。
logpath:MongoDB日志文件路徑。
port:MongoDB服務監(jiān)聽的端口號。
這里以dbpath為例,修改MongoDB的數(shù)據(jù)存儲路徑。
打開mongod.cfg文件,找到storage配置項,加入以下內(nèi)容:
storage: dbPath: /data/db
其中/data/db為指定的數(shù)據(jù)存儲路徑。
保存該文件后,我們可以啟動MongoDB服務。
2.3 啟動MongoDB服務
啟動MongoDB服務的方法有兩種:
使用命令行啟動
使用Windows服務啟動
這里我們以命令行方式啟動MongoDB服務。
進入MongoDB安裝目錄的bin子目錄,執(zhí)行以下命令:
./mongod
此時,MongoDB服務就已經(jīng)啟動了。
可以使用以下命令檢查MongoDB服務是否啟動:
./mongo
如果出現(xiàn)下面的信息,則說明MongoDB服務已經(jīng)成功啟動:
MongoDB shell version v4.0.0 connecting to: mongodb://127.0.0.1:27017 MongoDB server version: v4.0.0
3. MongoDB的基本操作
3.1 插入文檔
我們可以使用insertOne()方法來向MongoDB數(shù)據(jù)庫中插入一個文檔:
db.collection('users').insertOne({
name: '張三',
age: 25,
address: {
city: '北京',
street: '朝陽區(qū)'
}
});其中collection()方法用于指定要操作的集合(類似于關(guān)系型數(shù)據(jù)庫中的表),insertOne()方法用于插入一個文檔。
3.2 查詢文檔
我們可以使用find()方法來查詢MongoDB數(shù)據(jù)庫中的文檔:
db.collection('users').find({
age: {'$gte': 18}
});其中find()方法用于查詢文檔,age: {'$gte': 18}表示查詢年齡大于或等于18歲的文檔。查詢結(jié)果將會得到一個光標(Cursor),我們可以通過forEach()方法遍歷光標并輸出查詢結(jié)果:
db.collection('users').find({
age: {'$gte': 18}
}).forEach((doc) => {
console.log(doc);
});3.3 更新文檔
我們可以使用updateOne()方法來更新一個文檔:
db.collection('users').updateOne({
name: '張三'
}, {
$set: {age: 26}
});其中updateOne()方法用于更新文檔,第一個參數(shù)表示要更新的文檔,第二個參數(shù)表示要更新的字段和值,$set為更新操作符。
3.4 刪除文檔
我們可以使用deleteOne()方法來刪除一個文檔:
db.collection('users').deleteOne({
name: '張三'
});其中deleteOne()方法用于刪除文檔,參數(shù)表示要刪除的文檔。
4. 總結(jié)
本文主要介紹了MongoDB的基本知識和操作。MongoDB是一種面向文檔的無結(jié)構(gòu)化數(shù)據(jù)庫系統(tǒng),具有靈活性、可擴展性和高性能等優(yōu)點。安裝和配置MongoDB也非常簡單,使用MongoDB的API進行操作也非常方便。在實際使用中,MongoDB可以作為常規(guī)數(shù)據(jù)存儲或NoSQL解決方案的替代品,應用廣泛。
到此這篇關(guān)于MongoDB中文學習入門教程(包括安裝配置和增刪改查)的文章就介紹到這了,更多相關(guān)MongoDB入門學習教程內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Spring Boot中使用MongoDB數(shù)據(jù)庫的方法
MongoDB是一個高性能,開源,無模式的,基于分布式文件存儲的文檔型數(shù)據(jù)庫,由C++語言編寫,其名稱來源取自“humongous”,是一種開源的文檔數(shù)據(jù)庫──NoSql數(shù)據(jù)庫的一種。這篇文章主要介紹了Spring Boot中使用MongoDB數(shù)據(jù)庫的方法,需要的朋友可以參考下2017-12-12

