欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

在CentOS?7上安裝MongoDB數(shù)據(jù)庫(kù)的方法步驟

 更新時(shí)間:2024年09月05日 11:23:41   作者:白如意i  
MongoDB作為一款高性能、開源的NoSQL數(shù)據(jù)庫(kù),因其靈活性和可擴(kuò)展性,成為了眾多開發(fā)者和企業(yè)的首選,這篇文章主要給大家介紹了關(guān)于在CentOS?7上安裝MongoDB數(shù)據(jù)庫(kù)的方法步驟,需要的朋友可以參考下

簡(jiǎn)介

MongoDB 是一個(gè)免費(fèi)、開源的面向文檔的數(shù)據(jù)庫(kù)。它被歸類為 NoSQL 數(shù)據(jù)庫(kù),因?yàn)樗灰蕾囉趥鹘y(tǒng)的基于表的關(guān)系數(shù)據(jù)庫(kù)結(jié)構(gòu)。相反,它使用具有動(dòng)態(tài)模式的類似 JSON 的文檔。與關(guān)系數(shù)據(jù)庫(kù)不同,MongoDB 在向數(shù)據(jù)庫(kù)添加數(shù)據(jù)之前不需要預(yù)定義模式。您可以隨時(shí)和任意次數(shù)地更改模式,而無(wú)需設(shè)置具有更新后模式的新數(shù)據(jù)庫(kù)。

在本教程中,您將在 CentOS 7 服務(wù)器上安裝 MongoDB 社區(qū)版。

先決條件

在按照本教程之前,請(qǐng)確保您擁有:

  • 一個(gè)具有非 root sudo 權(quán)限的 CentOS 7 服務(wù)器。有關(guān)指導(dǎo),請(qǐng)參閱我們的教程《在 CentOS 7 上進(jìn)行初始服務(wù)器設(shè)置》。

步驟 1 – 添加 MongoDB 倉(cāng)庫(kù)

mongodb-org 軟件包在 CentOS 的默認(rèn)倉(cāng)庫(kù)中不存在。但是,MongoDB 維護(hù)了一個(gè)專用的倉(cāng)庫(kù)。讓我們將其添加到我們的服務(wù)器上。

使用 vi 編輯器,為 CentOS 的軟件包管理實(shí)用程序 yum 創(chuàng)建一個(gè) .repo 文件:

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

然后,訪問(wèn) MongoDB 文檔的 Red Hat 安裝部分,并將最新穩(wěn)定版本的倉(cāng)庫(kù)信息添加到文件中:

[mongodb-org-6.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/6.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-6.0.asc

通過(guò)按 ESC 鍵保存文件更改,然后輸入 :wq,并按 ENTER 鍵。

在繼續(xù)之前,您應(yīng)該驗(yàn)證 MongoDB 倉(cāng)庫(kù)是否存在于 yum 實(shí)用程序中。repolist 命令顯示已啟用的倉(cāng)庫(kù)列表:

yum repolist
. . .
repo id                          repo name
base/7/x86_64                    CentOS-7 - Base
extras/7/x86_64                  CentOS-7 - Extras
mongodb-org-6.0/7/x86_64         MongoDB Repository
updates/7/x86_64                 CentOS-7 - Updates
. . .

有了 MongoDB Repository,您可以繼續(xù)進(jìn)行安裝。

步驟 2 – 安裝 MongoDB

您可以使用 yum 實(shí)用程序從第三方倉(cāng)庫(kù)安裝 mongodb-org 軟件包。

sudo yum install mongodb-org

會(huì)有兩個(gè) Is this ok [y/N]: 提示。第一個(gè)允許安裝 MongoDB 軟件包,第二個(gè)導(dǎo)入 GPG 密鑰。MongoDB 的發(fā)布者使用密鑰來(lái)確認(rèn)已下載軟件包的完整性。在每個(gè)提示處,輸入 Y,然后按 ENTER 鍵。

接下來(lái),使用 systemctl 實(shí)用程序啟動(dòng) MongoDB 服務(wù):

sudo systemctl start mongod

雖然在本教程中我們不會(huì)使用它們,但您也可以使用 reload 和 stop 命令更改 MongoDB 服務(wù)的狀態(tài)。

reload 命令請(qǐng)求 mongod 進(jìn)程讀取配置文件 /etc/mongod.conf,并應(yīng)用任何更改,而無(wú)需重新啟動(dòng)。

sudo systemctl reload mongod

stop 命令停止所有正在運(yùn)行的 mongod 進(jìn)程。

sudo systemctl stop mongod

在執(zhí)行 start 命令后,systemctl 實(shí)用程序沒(méi)有提供結(jié)果,但您可以通過(guò)使用 tail 命令查看 mongod.log 文件的末尾來(lái)檢查服務(wù)是否已啟動(dòng):

sudo tail /var/log/mongodb/mongod.log
. . .
[initandlisten] waiting for connections on port 27017

等待連接 的輸出確認(rèn)了 MongoDB 已成功啟動(dòng),并且您可以使用 MongoDB Shell 訪問(wèn)數(shù)據(jù)庫(kù)服務(wù)器:

mongo

要了解如何從 shell 與 MongoDB 交互,您可以查看 db.help() 方法的輸出,該方法提供了 db 對(duì)象的方法列表。

db.help()
DB methods:
    db.adminCommand(nameOrDocument) - 切換到 'admin' 數(shù)據(jù)庫(kù),并運(yùn)行命令 [ 僅調(diào)用 db.runCommand(...) ]
    db.auth(username, password)
    db.cloneDatabase(fromhost)
    db.commandHelp(name) 返回命令的幫助
    db.copyDatabase(fromdb, todb, fromhost)
    db.createCollection(name, { size : ..., capped : ..., max : ... } )
    db.createUser(userDocument)
    db.currentOp() 顯示數(shù)據(jù)庫(kù)中當(dāng)前正在執(zhí)行的操作
    db.dropDatabase()
. . .

讓 mongod 進(jìn)程在后臺(tái)運(yùn)行,但使用 exit 命令退出 shell:

exit
Bye

步驟 3 – 驗(yàn)證啟動(dòng)

由于一個(gè)依賴數(shù)據(jù)庫(kù)的應(yīng)用程序在沒(méi)有數(shù)據(jù)庫(kù)的情況下無(wú)法正常運(yùn)行,我們將確保 MongoDB 守護(hù)程序 mongod 會(huì)隨系統(tǒng)啟動(dòng)而啟動(dòng)。

使用 systemctl 實(shí)用程序來(lái)檢查其啟動(dòng)狀態(tài):

systemctl is-enabled mongod; echo $?

輸出為零表示已啟用守護(hù)程序,這是我們想要的。而輸出為一則表示守護(hù)程序被禁用,將不會(huì)啟動(dòng)。

. . .
enabled
0

如果守護(hù)程序被禁用,使用 systemctl 實(shí)用程序來(lái)啟用它:

sudo systemctl enable mongod

現(xiàn)在你已經(jīng)有一個(gè)運(yùn)行中的 MongoDB 實(shí)例,它將在系統(tǒng)重新啟動(dòng)后自動(dòng)啟動(dòng)。

步驟 4 – 導(dǎo)入示例數(shù)據(jù)集(可選)

與其他數(shù)據(jù)庫(kù)服務(wù)器不同,MongoDB 不會(huì)在其 test 數(shù)據(jù)庫(kù)中提供數(shù)據(jù)。由于我們不希望使用生產(chǎn)數(shù)據(jù)來(lái)嘗試新軟件,我們將從 MongoDB 示例中下載一個(gè)樣本數(shù)據(jù)集。這個(gè) JSON 文檔包含了一組餐館數(shù)據(jù),我們將用它來(lái)練習(xí)與 MongoDB 的交互,并避免對(duì)敏感數(shù)據(jù)造成傷害。

首先進(jìn)入一個(gè)可寫目錄:

cd /tmp

使用 curl 命令和 MongoDB 的鏈接來(lái)下載 JSON 文件:

curl -LO https://raw.githubusercontent.com/mongodb/docs-assets/primer-dataset/primer-dataset.json

mongoimport 命令將數(shù)據(jù)插入到 test 數(shù)據(jù)庫(kù)中。--db 標(biāo)志定義了要使用的數(shù)據(jù)庫(kù),而 --collection 標(biāo)志指定了信息將被存儲(chǔ)在數(shù)據(jù)庫(kù)中的位置,--file 標(biāo)志告訴命令在哪個(gè)文件上執(zhí)行導(dǎo)入操作:

mongoimport --db test --collection restaurants --file /tmp/primer-dataset.json

輸出確認(rèn)了從 primer-dataset.json 文件導(dǎo)入數(shù)據(jù):

connected to: localhost
imported 25359 documents

有了樣本數(shù)據(jù)集,你可以對(duì)其執(zhí)行查詢。

重新啟動(dòng) MongoDB Shell:

mongo

Shell 默認(rèn)選擇 test 數(shù)據(jù)庫(kù),這就是你導(dǎo)入數(shù)據(jù)的地方。

使用 find() 方法查詢 restaurants 集合,以顯示數(shù)據(jù)集中所有餐館的列表。由于集合包含超過(guò) 25,000 條記錄,使用可選的 limit() 方法將查詢的輸出減少到指定數(shù)量。此外,pretty() 方法通過(guò)換行和縮進(jìn)使信息更易讀。

db.restaurants.find().limit(1).pretty()
{
    "_id" : ObjectId("57e0443b46af7966d1c8fa68"),
    "address" : {
        "building" : "1007",
        "coord" : [
            -73.856077,
            40.848447
        ],
        "street" : "Morris Park Ave",
        "zipcode" : "10462"
    },
    "borough" : "Bronx",
    "cuisine" : "Bakery",
    "grades" : [
        {
            "date" : ISODate("2014-03-03T00:00:00Z"),
            "grade" : "A",
            "score" : 2
        },
        {
            "date" : ISODate("2013-09-11T00:00:00Z"),
            "grade" : "A",
            "score" : 6
        },
        {
            "date" : ISODate("2013-01-24T00:00:00Z"),
            "grade" : "A",
            "score" : 10
        },
        {
            "date" : ISODate("2011-11-23T00:00:00Z"),
            "grade" : "A",
            "score" : 9
        },
        {
            "date" : ISODate("2011-03-10T00:00:00Z"),
            "grade" : "B",
            "score" : 14
        }
    ],
    "name" : "Morris Park Bake Shop",
    "restaurant_id" : "30075445"
}

你可以繼續(xù)使用樣本數(shù)據(jù)集來(lái)熟悉 MongoDB,或者使用 db.restaurants.drop() 方法刪除它:

db.restaurants.drop()

最后,使用 exit 命令退出 Shell:

exit
Bye

結(jié)論

在本教程中,你向 yum 添加了一個(gè)第三方存儲(chǔ)庫(kù),安裝了 MongoDB 數(shù)據(jù)庫(kù)服務(wù)器,導(dǎo)入了一個(gè)樣本數(shù)據(jù)集,并執(zhí)行了一個(gè)簡(jiǎn)單的查詢。MongoDB 還有很多其他用途,比如創(chuàng)建帶有 collections 的數(shù)據(jù)庫(kù),填充數(shù)據(jù)庫(kù)的許多 documents,以及構(gòu)建強(qiáng)大的應(yīng)用程序。要了解更多關(guān)于 MongoDB 的信息,請(qǐng)查看我們的系列教程《如何使用 MongoDB 管理數(shù)據(jù)庫(kù)》或者我們的其他 MongoDB 教程。

到此這篇關(guān)于在CentOS 7上安裝MongoDB數(shù)據(jù)庫(kù)的文章就介紹到這了,更多相關(guān)CentOS 7安裝MongoDB內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 關(guān)于MongoDB數(shù)據(jù)庫(kù)核心概念

    關(guān)于MongoDB數(shù)據(jù)庫(kù)核心概念

    這篇文章主要介紹了關(guān)于MongoDB數(shù)據(jù)庫(kù)核心概念,MongoDB由C++語(yǔ)言編寫,是一個(gè)基于分布式文件存儲(chǔ)的開源數(shù)據(jù)庫(kù)系統(tǒng),需要的朋友可以參考下
    2023-04-04
  • MongoDB數(shù)據(jù)查詢方法干貨篇

    MongoDB數(shù)據(jù)查詢方法干貨篇

    查詢操作在我們?nèi)粘2僮鲾?shù)據(jù)庫(kù)的時(shí)候是必不可少的一部分,最近有些空閑時(shí)間,所有就將MongoDB數(shù)據(jù)查詢的一些方法技巧總結(jié)了處理,這篇文章主要介紹了MongoDB數(shù)據(jù)查詢的相關(guān)資料,需要的朋友可以參考借鑒,一起來(lái)看看吧。
    2017-05-05
  • yum源安裝mongodb圖文教程

    yum源安裝mongodb圖文教程

    本文給大家介紹的是使用yum源安裝MongoDB的詳細(xì)的圖文教程,小伙伴們跟著教程一步步操作即可,希望大家喜歡
    2018-09-09
  • 使用aggregate在MongoDB中查詢重復(fù)數(shù)據(jù)記錄的方法

    使用aggregate在MongoDB中查詢重復(fù)數(shù)據(jù)記錄的方法

    這篇文章主要介紹了使用aggregate在MongoDB中查詢重復(fù)數(shù)據(jù)記錄的方法的相關(guān)資料,需要的朋友可以參考下
    2016-01-01
  • MongoDB db.serverStatus()輸出內(nèi)容中文注釋

    MongoDB db.serverStatus()輸出內(nèi)容中文注釋

    這篇文章主要介紹了MongoDB db.serverStatus()輸出內(nèi)容中文注釋,本文收集了2個(gè)版本的中文注釋來(lái)講解,需要的朋友可以參考下
    2014-08-08
  • mongos崩潰后無(wú)法重啟問(wèn)題的解決方法

    mongos崩潰后無(wú)法重啟問(wèn)題的解決方法

    這篇文章主要給大家介紹了關(guān)于mongos崩潰后無(wú)法重啟問(wèn)題的解決方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-02-02
  • MongoDB為什么比Mysql快原理解析

    MongoDB為什么比Mysql快原理解析

    這篇文章主要為大家介紹了MongoDB為什么比Mysql快原理解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-03-03
  • MongoDB的聚合框架Aggregation Framework入門學(xué)習(xí)教程

    MongoDB的聚合框架Aggregation Framework入門學(xué)習(xí)教程

    MongoDB中的聚合aggregate主要用于處理數(shù)據(jù)計(jì)算,這里我們就來(lái)詳細(xì)整理MongoDB的聚合框架Aggregation Framework入門學(xué)習(xí)教程,需要的朋友可以參考下
    2016-07-07
  • MongoDB數(shù)據(jù)庫(kù)常用28條查詢語(yǔ)句總結(jié)

    MongoDB數(shù)據(jù)庫(kù)常用28條查詢語(yǔ)句總結(jié)

    我們經(jīng)常使用的MySQL是最流行的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),隨著時(shí)代的進(jìn)步,互聯(lián)網(wǎng)的發(fā)展關(guān)系型數(shù)據(jù)庫(kù)已經(jīng)不滿足于互聯(lián)網(wǎng)的需求,因此出現(xiàn)了非關(guān)系數(shù)據(jù)庫(kù),下面這篇文章主要給大家總結(jié)介紹了關(guān)于MongoDB數(shù)據(jù)庫(kù)常用28條查詢語(yǔ)句,需要的朋友可以參考下
    2023-05-05
  • MongoDB的基本安裝與管理命令腳本總結(jié)

    MongoDB的基本安裝與管理命令腳本總結(jié)

    MongoDB是一款高人氣的NoSQL數(shù)據(jù)庫(kù),且以JavaScript代碼作為腳本進(jìn)行操作,對(duì)開發(fā)者非常友好,這里我們就來(lái)看一下MongoDB的基本安裝與管理命令腳本總結(jié)
    2016-07-07

最新評(píng)論