1. 程式人生 > >Linux安裝MongoDB並在項目中實際運用

Linux安裝MongoDB並在項目中實際運用

cor star 技術 date start 文件 alt tab .com

一、MongoDB,一個數據庫,我們怎麽去使用它呢?我們首先了解一下什麽是MongoDb

官網的介紹是:MongoDB是專為可擴展性,高性能和高可用性而設計的數據庫。它可以從單服務器部署擴展到大型、復雜的多數據中心架構。利用內存計算的優勢,MongoDB能夠提供高性能的數據讀寫操作。 MongoDB的本地復制和自動故障轉移功能使您的應用程序具有企業級的可靠性和操作靈活性。

二、在Linux上安裝MongoDB

創建文件

vi /etc/yum.repos.d/mongodb-org-3.6.repo

配置文件內容

[mongodb-org-3.6]

name
=MongoDB Repository baseurl=https://repo.mongodb.org/yum/amazon/2013.03/mongodb-org/3.6/x86_64/ gpgcheck=1 enabled=1 gpgkey=https://www.mongodb.org/static/pgp/server-3.6.asc

開始安裝

sudo yum install -y mongodb-org

mongod -repair

然後返回根目錄去創建一個文件夾data並在其下面創建db來存儲文件

cd ..

mkdir data

cd data

mkdir db

啟動MongoDB並查看狀態

systemctl start mongod.service

systemctl status mongod.service

創建管理員賬號

1、 登錄

mongo

2、創建管理員賬號

mongo

use admin

db.createUser({user:"root",pwd:"root",roles:[{role: "userAdminAnyDatabase", db: "admin"}]})

找到配置文件並修改其內容

vi /etc/mongod.conf

找到 bindIp:127.0.0.1 修改為0.0.0.0 這樣就可以任意ip進行連接

開啟:27017端口

firewall-cmd --zone=public --permanent --add-port=27017/tcp; firewall-cmd –reload

停止重啟mongodb

systemctl stop mongod.service

systemctl restart mongod.service

這是我們在Linux上已經安裝好了MongoDB,接下來就可以步入正題了,如何在項目中使用MongoDB

三、在.Net Core中使用MongoDB

這裏我們首先準備一個.Net Core 的項目,然後在項目當中創建一個名叫MongoDBHelpers的類

public class MongoDBHelpers

    {

        /// <summary>

        /// 建立MongoDB連接

        /// </summary>

        static MongoClient mongoClient = new MongoClient(“"mongodb://0.0.0.0:27017”);//自己的mongodb地址

        /// <summary>

        /// 獲取MongoDB數據庫(admin數據庫)

        /// </summary>

        private static readonly IMongoDatabase database = mongoClient.GetDatabase("admin");

 

        public static IMongoDatabase testDb { get { return database; } }

 

 

        //連接需要操作的集合,如果數據庫下面包含此集合就會添加數據,如果沒有則會創建此集合

        public static IMongoCollection<TestMongoDB> GetMongoTest => database.GetCollection<TestMongoDB>("Person");

    }

在這裏我們連接MongoDB的操作算是完工了,接下來就是對數據的操作了主要介紹一下增刪改查四步操作

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、 修改

 var oldValue = Builders<TestMongoDB>.Filter.Eq("Name","新增");

var newValue= Builders<TestMongoDB>.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的操作中會發現,與以往的SqlServer,Oracle的操作有點不同,修改的操作相對較為麻煩一點。但現在我們也完成了在.Net Core中對MongoDB的操作了。

四、查看MongoDB中的數據(Linux、客戶端Studio 3T)

首先我們來了解在Linux中如何查看MongoDB數據庫使用情況:


登錄mongodb

 mongo

查看數據庫

 show dbs

使用操作某一個數據庫(使用admin)

  use admin

操作數據

 db.Person.find()  //查詢

db.Person.remove({"Name":"新增"})  //刪除

db.Person.insert({"Name":"新增"}  //新增

db.Person.update({"Name":"新增"},{"Name":"修改"})   修改

上面就是Linux的一些操作,我們再看下如果實在windows上我們怎麽去查看情況以及操作呢

Windows使用MongoDB的話需要下載客戶端Studio 3T:https://studio3t.com/download/

然後按照提示一步一步安裝即可,成功之後我們打開程序。

技術分享圖片

首先去創建一個連接

技術分享圖片

這裏輸入你MongoDB部署的ip地址即可連接,連接成功就可以對可以對MongoDB進行操作了。

Linux安裝MongoDB並在項目中實際運用