對(duì)於關(guān)係型資料庫(kù),我們知道,資料庫(kù)中有多個(gè)表,資料表裡有多行資料。而對(duì)於MongoDB來(lái)說(shuō),則是資料庫(kù)裡有多個(gè)集合,集合裡由多個(gè)文件。
資料庫(kù)
MongoDB的資料庫(kù)概念和Mysql的差不多,每個(gè)資料庫(kù)都可以設(shè)定獨(dú)立的權(quán)限。
首先,我們來(lái)看如何建立資料庫(kù),MongoDB對(duì)於資料庫(kù)名稱也是有限制的,只能使用數(shù)字或字母,另外資料庫(kù)名稱是區(qū)分大小寫的,一般的,我們都會(huì)使用小寫的。另外,有一些關(guān)鍵字也是不可以使用的,如:admin、config、local等。
在MongoDB中,不需要顯示的建立資料庫(kù),只需要選擇use dbName即可,當(dāng)資料庫(kù)不存在的時(shí)候,會(huì)自動(dòng)為我們建立。
> use huoying switched to db huoying
當(dāng)使用db指令時(shí),會(huì)顯示目前使用的資料庫(kù)名稱。
> db huoying
查看目前所有資料庫(kù),使用show dbs;
> show dbs; admin 0.000GB config 0.000GB huoying 0.000GB local 0.000GB
#集合
MongoDB的集合類似Mysql中的表,集合有多個(gè)文檔組成的。但集合不像表格有欄位的限制,集合下面的文件可以是各種各樣。例如,一個(gè)集合下面可能有下面兩種文件:
{"name":"gwx", "age" : 30}, {"id":1, "score":100}
雖然,集合對(duì)文件是沒有限制的,但是為了資料管理的方便,我們一般都會(huì)將相關(guān)文件放在一個(gè)集合裡。
建立集合,分為直接建立和隱含建立。
# 顯示的創(chuàng)建集合 > db.createCollection('huoying') { "ok" : 1 }
隱含建立集合,直接建立文件時(shí),若集合不存在,會(huì)先建立集合
文件
最後,我們來(lái)看看文件。文件的資料型態(tài)類似php中的關(guān)聯(lián)資料、或JavaScript中的物件。
注意,文件是區(qū)分大小寫以及資料類型的??聪旅婀?fàn)例:
# 下面兩個(gè)是不一樣的文檔,他們的數(shù)據(jù)類型不一樣 {"name":30} {"name":"30"} # 下面兩個(gè)是不一樣的文檔,鍵名不一樣 {"name":30} {"NAME":30}
新增文件
#使用指令db.集合名稱.insertOne(文件資料),可以向指定集合插入一篇文件。若該集合不存在時(shí),則會(huì)隱式建立該集合。
> db.users.insertOne({"name":"gwx", "age":29}) { "acknowledged" : true, "insertedId" : ObjectId("5f0cfdbb7688816db4d031bc") } > db.users.find() { "_id" : ObjectId("5f0cfdbb7688816db4d031bc"), "name" : "gwx", "age" : 29 } >
修改文件
#使用update更新文件內(nèi)容,update需要兩個(gè)參數(shù),第一個(gè)是限定條件,用來(lái)尋找指定的文檔,第二個(gè)是新文檔的內(nèi)容。
> db.users.update({name:"gwx"}, {name:"monkeyking", age:500}) WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 }) > db.users.find() { "_id" : ObjectId("5f0cfdbb7688816db4d031bc"), "name" : "monkeyking", "age" : 500 }
刪除文件
使用remove來(lái)刪除文件
> db.users.remove({age:500}) WriteResult({ "nRemoved" : 1 })
以上是通俗講解MongoDB資料庫(kù)、集合、文件的概念的詳細(xì)內(nèi)容。更多資訊請(qǐng)關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

熱AI工具

Undress AI Tool
免費(fèi)脫衣圖片

Undresser.AI Undress
人工智慧驅(qū)動(dòng)的應(yīng)用程序,用於創(chuàng)建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費(fèi)的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費(fèi)的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強(qiáng)大的PHP整合開發(fā)環(huán)境

Dreamweaver CS6
視覺化網(wǎng)頁(yè)開發(fā)工具

SublimeText3 Mac版
神級(jí)程式碼編輯軟體(SublimeText3)

熱門話題

在開發(fā)一個(gè)電商網(wǎng)站時(shí),我遇到了一個(gè)棘手的問(wèn)題:如何為用戶提供個(gè)性化的商品推薦。最初,我嘗試了一些簡(jiǎn)單的推薦算法,但效果並不理想,用戶的滿意度也因此受到影響。為了提升推薦系統(tǒng)的精度和效率,我決定採(cǎi)用更專業(yè)的解決方案。最終,我通過(guò)Composer安裝了andres-montanez/recommendations-bundle,這不僅解決了我的問(wèn)題,還大大提升了推薦系統(tǒng)的性能。可以通過(guò)一下地址學(xué)習(xí)composer:學(xué)習(xí)地址

CentOS系統(tǒng)上GitLab數(shù)據(jù)庫(kù)部署指南選擇合適的數(shù)據(jù)庫(kù)是成功部署GitLab的關(guān)鍵步驟。 GitLab兼容多種數(shù)據(jù)庫(kù),包括MySQL、PostgreSQL和MongoDB。本文將詳細(xì)介紹如何選擇並配置這些數(shù)據(jù)庫(kù)。數(shù)據(jù)庫(kù)選擇建議MySQL:一款廣泛應(yīng)用的關(guān)係型數(shù)據(jù)庫(kù)管理系統(tǒng)(RDBMS),性能穩(wěn)定,適用於大多數(shù)GitLab部署場(chǎng)景。 PostgreSQL:功能強(qiáng)大的開源RDBMS,支持複雜查詢和高級(jí)特性,適合處理大型數(shù)據(jù)集。 MongoDB:流行的NoSQL數(shù)據(jù)庫(kù),擅長(zhǎng)處理海

MongoDB適合處理大規(guī)模非結(jié)構(gòu)化數(shù)據(jù),Oracle適用于需要事務(wù)一致性的企業(yè)級(jí)應(yīng)用。1.MongoDB提供靈活性和高性能,適合處理用戶行為數(shù)據(jù)。2.Oracle以穩(wěn)定性和強(qiáng)大功能著稱,適用于金融系統(tǒng)。3.MongoDB使用文檔模型,Oracle使用關(guān)系模型。4.MongoDB適合社交媒體應(yīng)用,Oracle適合企業(yè)級(jí)應(yīng)用。

MongoDB適合非結(jié)構(gòu)化數(shù)據(jù)和高擴(kuò)展性需求,Oracle適合需要嚴(yán)格數(shù)據(jù)一致性的場(chǎng)景。 1.MongoDB靈活存儲(chǔ)不同結(jié)構(gòu)數(shù)據(jù),適合社交媒體和物聯(lián)網(wǎng)。 2.Oracle結(jié)構(gòu)化數(shù)據(jù)模型確保數(shù)據(jù)完整性,適用於金融交易。 3.MongoDB通過(guò)分片橫向擴(kuò)展,Oracle通過(guò)RAC縱向擴(kuò)展。 4.MongoDB維護(hù)成本低,Oracle維護(hù)成本高但支持完善。

CentOS系統(tǒng)下MongoDB高效備份策略詳解本文將詳細(xì)介紹在CentOS系統(tǒng)上實(shí)施MongoDB備份的多種策略,以確保數(shù)據(jù)安全和業(yè)務(wù)連續(xù)性。我們將涵蓋手動(dòng)備份、定時(shí)備份、自動(dòng)化腳本備份以及Docker容器環(huán)境下的備份方法,並提供備份文件管理的最佳實(shí)踐。手動(dòng)備份:利用mongodump命令進(jìn)行手動(dòng)全量備份,例如:mongodump-hlocalhost:27017-u用戶名-p密碼-d數(shù)據(jù)庫(kù)名稱-o/備份目錄此命令會(huì)將指定數(shù)據(jù)庫(kù)的數(shù)據(jù)及元數(shù)據(jù)導(dǎo)出到指定的備份目錄。

要設(shè)置 MongoDB 用戶,請(qǐng)按照以下步驟操作:1. 連接到服務(wù)器並創(chuàng)建管理員用戶。 2. 創(chuàng)建要授予用戶訪問(wèn)權(quán)限的數(shù)據(jù)庫(kù)。 3. 使用 createUser 命令創(chuàng)建用戶並指定其角色和數(shù)據(jù)庫(kù)訪問(wèn)權(quán)限。 4. 使用 getUsers 命令檢查創(chuàng)建的用戶。 5. 可選地設(shè)置其他權(quán)限或授予用戶對(duì)特定集合的權(quán)限。

要啟動(dòng) MongoDB 服務(wù)器:在 Unix 系統(tǒng)中,運(yùn)行 mongod 命令。在 Windows 系統(tǒng)中,運(yùn)行 mongod.exe 命令。可選:使用 --dbpath、--port、--auth 或 --replSet 選項(xiàng)設(shè)置配置。使用 mongo 命令驗(yàn)證連接是否成功。

在Debian系統(tǒng)上為MongoDB數(shù)據(jù)庫(kù)加密,需要遵循以下步驟:第一步:安裝MongoDB首先,確保您的Debian系統(tǒng)已安裝MongoDB。如果沒有,請(qǐng)參考MongoDB官方文檔進(jìn)行安裝:https://docs.mongodb.com/manual/tutorial/install-mongodb-on-debian/第二步:生成加密密鑰文件創(chuàng)建一個(gè)包含加密密鑰的文件,並設(shè)置正確的權(quán)限:ddif=/dev/urandomof=/etc/mongodb-keyfilebs=512
