久久精品精选,精品九九视频,www久久只有这里有精品,亚洲熟女乱色综合一区
    分享

    mongodb大法好,社區版在CentOS7云服務器上的安裝教程

     92讀書 2019-12-05

    MongoDB是由C++語言編寫的,是一個基于分布式文件存儲的開源數據庫系統。

    在高負載的情況下,添加更多的節點,可以保證服務器性能。本文是講述把MongoDB社區版安裝到新睿云CentOS7服務器上,按照AGPL的要求,社區版自用免費,如果要分發是必須使用企業版的。

    一、添加MongoDB資料庫

    mongodb-org默認情況下該軟件包不存在CentOS7的源倉庫中所以我們需要把其先放到倉庫中。

    使用vi編輯器為創建.repo文件yum,為CentOS的軟件包管理實用程序:

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

    然后,訪問MongoDB文檔的“在Red Hat上安裝”部分,并添加資料庫該文件的最新穩定版本的信息:

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

    [mongodb-org-3.4]

    name=MongoDB Repository

    baseurl=https://repo./yum/redhat/$releasever/mongodb-org/3.4/x86_64/

    gpgcheck=1

    enabled=1

    gpgkey=https://www./static/pgp/server-3.4.asc

    保存并關閉文件。

    在繼續之前,我們應該驗證MongoDB資料庫yum實用程序中存在。該repolist命令顯示已啟用的列表倉庫:

    yum repolist

    Output

    ...

    repo id repo name

    base/7/x86_64 CentOS-7-Base

    extras/7/x86_64 CentOS-7-Extras

    mongodb-org-3.2/7/x86_64 MongoDB Repository

    updates/7/x86_64 CentOS-7-Updates

    ...

    隨著MongoDB Repository到位,讓我們繼續安裝。

    二、安裝MongoDB數據庫

    我們可以mongodb-org從第三方安裝軟件包資料庫使用該yum實用程序。

    sudo yum install mongodb-org

    有兩個Is this ok[y/N]:提示。第一個允許安裝MongoDB軟件包,第二個允許導入GPG密鑰。MongoDB的發布者對其軟件進行簽名,并yum使用密鑰來確認所下載軟件包的完整性。在每個提示下,鍵入Y,然后ENTER按鍵。

    接下來,使用該systemctl實用程序啟動MongoDB服務:

    sudo systemctl start mongod

    盡管我們不會在本教程中使用它們,但是您也可以使用reload和stop命令更改MongoDB服務的狀態。

    該reload命令要求mongod進程讀取配置文件/etc/mongod.conf,并應用任何更改而無需重新啟動。

    sudo systemctl reload mongod

    該stop命令將暫停所有正在運行的mongod進程。

    sudo systemctl stop mongod

    該systemctl實用程序在執行start命令后沒有提供結果,但是我們可以通過mongod.log使用以下tail命令查看文件末尾來檢查服務是否已啟動:

    sudo tail/var/log/mongodb/mongod.log

    Output

    ...

    [initandlisten]waiting for connections on port 27017

    等待連接的輸出確認MongoDB已成功啟動,我們可以使用MongoDB Shell訪問數據庫服務器:

    mongo

    注意:啟動MongoDB Shell時,您可能會看到如下警告:

    **WARNING:soft rlimits too low.rlimits set to 4096 processes,64000 files.Number of processes should be at least 32000:0.5 times number of files.

    MongoDB是一個線程化的應用程序。它可以啟動其他流程來處理其工作量。該警告指出,要使MongoDB最有效,它的進程數是授權的加速應該是它在任何給定時間可以打開的文件數量的一半。要解決警告,請通過編輯文件processes來更改soft rlimit值:mongod20-nproc.conf

    sudo vi/etc/security/limits.d/20-nproc.conf

    將以下行添加到文件末尾:

    /etc/security/limits.d/20-nproc.conf

    ...

    mongod soft nproc 32000

    為了使新限制適用于MongoDB,請使用systemctl實用程序將其重新啟動:

    sudo systemctl restart mongod

    之后,當您連接到MongoDB Shell時,該警告應該不再存在。

    如果要與MongoDB進行交互,您截圖使用db.help()方法的輸出,該方法提供了db對象的方法列表。

    db.help()

    Output

    DB methods:

    db.adminCommand(nameOrDocument)-switches to'admin'db,and runs command[just calls db.runCommand(...)]

    db.auth(username,password)

    db.cloneDatabase(fromhost)

    db.commandHelp(name)returns the help for the command

    db.copyDatabase(fromdb,todb,fromhost)

    db.createCollection(name,{size:...,capped:...,max:...})

    db.createUser(userDocument)

    db.currentOp()displays currently executing operations in the db

    db.dropDatabase()

     

    ...

    讓mongod進程在后臺運行,但是使用以下exit命令退出shell:

    exit

    Output

    Bye

    三、驗證MongoDB啟動

    如果數據庫安裝失敗,應用程序無法運行,所以我們將確保MongoDB守護程序已經啟動。

    使用該systemctl實用工具檢查其啟動狀態:

    systemctl is-enabled mongod;echo$?

    輸出為零表示已啟用守護程序,這樣符合我們的預期。但是,如果數據安裝不完全或者失敗則啟動程序可以不會出現或者殘缺不全。

    Output

    ...

    enabled

    0

    如果啟動程序啟動但運行的不完成,請使用該systemctl實用工具啟用它:

    sudo systemctl enable mongod

    現在,我們有了一個正在運行的MongoDB實例,它將在系統重啟后自動啟動。

    四、導入示例數據集(可選)

    與其他數據庫服務器不同,MongoDB的數據庫中沒有數據test測試數據集。因此我們將從“MongoDB入門”文檔的“導入示例數據集”部分下載示例數據集。JSON文檔集合,我們將使用它們來練習與MongoDB的交互并避免對敏感數據造成傷害。

    進入可寫的目錄:

    cd/tmp

    使用curl命令和MongoDB中的鏈接下載JSON文件:

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

    該mongoimport命令會將數據插入測試數據庫。該--db標志定義了要使用的數據庫,而--collection標志則指定了將信息存儲在數據庫中的位置,并且--file標志告訴命令在哪個文件上執行導入操作:

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

    輸出確認從primer-dataset.json文件中導入數據:

    Output

    connected to:localhost

    imported 25359 documents

    放置好樣本數據集之后,我們將對其進行查詢。

    重新啟動MongoDB Shell:

    mongo

    Shell test默認選擇數據庫,這是我們導入數據的地方。

    使用方法查詢餐廳集合,find()以顯示數據集中所有餐廳的列表。由于該集合包含超過25,000個條目,因此請使用可選limit()方法將查詢的輸出減少到指定的數量。此外,該pretty()方法使信息更人性化-可讀的與換行符和縮進。

    db.restaurants.find().limit(1).pretty()

    Output

    {

    "_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"

    }

    您可以繼續使用樣本數據集來熟悉自己使用MongoDB或使用以下db.restaurants.drop()方法將其刪除:

    db.restaurants.drop()

    最后,使用以下exit命令退出shell:

    exit

    Output

    Bye

    按照本文示例您可以配置并且應用MongoDB,如果您想進一步的深入了解更多數據庫的使用辦法可以閱讀《postgresql和mysql:性能、語法、功能有哪些差異?

      本站是提供個人知識管理的網絡存儲空間,所有內容均由用戶發布,不代表本站觀點。請注意甄別內容中的聯系方式、誘導購買等信息,謹防詐騙。如發現有害或侵權內容,請點擊一鍵舉報。
      轉藏 分享 獻花(0

      0條評論

      發表

      請遵守用戶 評論公約

      類似文章 更多

      主站蜘蛛池模板: 116美女极品a级毛片| 国产永久免费高清在线观看 | 人妻少妇久久中文字幕| 丁香五月婷激情综合第九色| 中文字幕国产原创国产| 国产色无码精品视频免费| 欧美丰满熟妇xxxx性| 少妇久久久久久久久久| AAA级久久久精品无码片| 精品一区二区三区自拍图片区| 国产激情视频在线观看的| 人妻 日韩 欧美 综合 制服| 国产成人啪精品午夜网站| 午夜福利在线观看6080| 强奷漂亮少妇高潮麻豆| 蜜臀久久99精品久久久久久小说| 亚洲成AV人片不卡无码手机版| 国产精品中文字幕一区| 2019久久久高清日本道| 国产乱人伦偷精品视频下| 国产精品久久久久7777| 狠狠做五月深爱婷婷伊人| 中文字幕人妻系列人妻有码| 中文字幕亚洲精品人妻| 午夜性色一区二区三区不卡视频| 久久久久无码精品国产| 亚洲欧洲日产国无高清码图片| 国产精品无码DVD在线观看| 天堂V亚洲国产V第一次| AV激情亚洲男人的天堂| 任我爽精品视频在线播放| 久草热8精品视频在线观看| 国产99视频精品免视看9| 精品一区二区亚洲国产| 妺妺窝人体色WWW在线一| 亚洲第一精品一二三区| 潮喷失禁大喷水无码| 国产成人午夜福利院| 日韩精品国产中文字幕| 中文字幕国产精品专区| 亚洲日本韩国欧美云霸高清|