一今缚、MongoDB,一個(gè)數(shù)據(jù)庫(kù)低淡,我們?cè)趺慈ナ褂盟匦昭裕课覀兪紫攘私庖幌率裁词荕ongoDb
官網(wǎng)的介紹是:MongoDB是專為可擴(kuò)展性,高性能和高可用性而設(shè)計(jì)的數(shù)據(jù)庫(kù)蔗蹋。它可以從單服務(wù)器部署擴(kuò)展到大型何荚、復(fù)雜的多數(shù)據(jù)中心架構(gòu)。利用內(nèi)存計(jì)算的優(yōu)勢(shì)猪杭,MongoDB能夠提供高性能的數(shù)據(jù)讀寫操作餐塘。 MongoDB的本地復(fù)制和自動(dòng)故障轉(zhuǎn)移功能使您的應(yīng)用程序具有企業(yè)級(jí)的可靠性和操作靈活性。
二皂吮、在Linux上安裝MongoDB
創(chuàng)建文件
vi /etc/yum.repos.d/mongodb-org-3.6.repo
配置文件內(nèi)容
[mongodb-org-3.6]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/amazon/2013.03/mongodb-org/3.6/x86_64/gpgcheck=1enabled=1gpgkey=https://www.mongodb.org/static/pgp/server-3.6.asc
開始安裝
sudo yum install -y mongodb-org
mongod -repair
然后返回根目錄去創(chuàng)建一個(gè)文件夾data并在其下面創(chuàng)建db來(lái)存儲(chǔ)文件
cd ..
mkdir data
cd data
mkdir db
啟動(dòng)MongoDB并查看狀態(tài)
systemctl start mongod.service
systemctl status mongod.service
創(chuàng)建管理員賬號(hào)
1戒傻、 登錄
mongo
2、創(chuàng)建管理員賬號(hào)
mongo
use admin
db.createUser({user:"root",pwd:"root",roles:[{role:"userAdminAnyDatabase", db:"admin"}]})
找到配置文件并修改其內(nèi)容
vi /etc/mongod.conf
找到 ??bindIp:127.0.0.1 修改為0.0.0.0 這樣就可以任意ip進(jìn)行連接
開啟:27017端口
firewall-cmd --zone=public--permanent --add-port=27017/tcp; firewall-cmd –reload
停止重啟mongodb
systemctl stop mongod.service
systemctl restart mongod.service
這是我們?cè)贚inux上已經(jīng)安裝好了MongoDB,接下來(lái)就可以步入正題了蜂筹,如何在項(xiàng)目中使用MongoDB
三需纳、在.Net Core中使用MongoDB
這里我們首先準(zhǔn)備一個(gè).Net Core 的項(xiàng)目,然后在項(xiàng)目當(dāng)中創(chuàng)建一個(gè)名叫MongoDBHelpers的類
publicclass MongoDBHelpers
? ? {
? ? ? ? ///<summary>/// 建立MongoDB連接
? ? ? ? ///</summary>staticMongoClient mongoClient =newMongoClient(“"mongodb://0.0.0.0:27017”);//自己的mongodb地址///<summary>/// 獲取MongoDB數(shù)據(jù)庫(kù)(admin數(shù)據(jù)庫(kù))
? ? ? ? ///</summary>privatestaticreadonlyIMongoDatabase database = mongoClient.GetDatabase("admin");
? ? ? ? publicstaticIMongoDatabase testDb {get{return database; } }
? ? ? ? //連接需要操作的集合艺挪,如果數(shù)據(jù)庫(kù)下面包含此集合就會(huì)添加數(shù)據(jù)不翩,如果沒有則會(huì)創(chuàng)建此集合
????????publicstaticIMongoCollection GetMongoTest => database.GetCollection("Person");
? ? }
在這里我們連接MongoDB的操作算是完工了,接下來(lái)就是對(duì)數(shù)據(jù)的操作了主要介紹一下增刪改查四步操作
1麻裳、 新增
? ? TestMongoDB testMongoDB =new TestMongoDB();
? ? testMongoDB.Name ="新增";
? ? testMongoDB.TestId =2;
? ? testMongoDB.Sex =1;
? ? MongoDBHelpers.GetMongoTest.InsertOne(testMongoDB);
2口蝠、 刪除
MongoDBHelpers.GetMongoTest.DeleteOne(x => x.Name =="新增");
3、 修改
varoldValue = Builders.Filter.Eq("Name","新增");varnewValue= Builders.Update
? ? ? ? ? ? ? ? .Set("Name","修改")
? ? ? ? ? ? ? ? .Set("TestId","3")
? ? ? ? ? ? ? ? .Set("Sex","1");
MongoDBHelpers.GetMongoTest.UpdateOne(oldValue, newValue);
4掂器、 查詢
MongoDBHelpers.GetMongoTest.Find(x => x.Name =="新增").ToListAsync().GetAwaiter().GetResult();
在MongoDB的操作中會(huì)發(fā)現(xiàn)亚皂,與以往的SqlServer,Oracle的操作有點(diǎn)不同国瓮,修改的操作相對(duì)較為麻煩一點(diǎn)灭必。但現(xiàn)在我們也完成了在.Net Core中對(duì)MongoDB的操作了。
四乃摹、查看MongoDB中的數(shù)據(jù)(Linux禁漓、客戶端Studio 3T)
首先我們來(lái)了解在Linux中如何查看MongoDB數(shù)據(jù)庫(kù)使用情況:
登錄mongodb
mongo
查看數(shù)據(jù)庫(kù)
show dbs
使用操作某一個(gè)數(shù)據(jù)庫(kù)(使用admin)
? use admin
?操作數(shù)據(jù)
db.Person.find()//查詢db.Person.remove({"Name":"新增"})//刪除db.Person.insert({"Name":"新增"}//新增db.Person.update({"Name":"新增"},{"Name":"修改"})? 修改
上面就是Linux的一些操作,我們?cè)倏聪氯绻麑?shí)在windows上我們?cè)趺慈ゲ榭辞闆r以及操作呢
Windows使用MongoDB的話需要下載客戶端Studio 3T:https://studio3t.com/download/
然后按照提示一步一步安裝即可孵睬,成功之后我們打開程序播歼。
首先去創(chuàng)建一個(gè)連接
這里輸入你MongoDB部署的ip地址即可連接,連接成功就可以對(duì)可以對(duì)MongoDB進(jìn)行操作了。