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

MongoDB學(xué)習(xí)筆記—Linux下搭建MongoDB環(huán)境

 更新時(shí)間:2016年11月29日 14:34:46   作者:Kencery  
本篇文章主要介紹了Linux下搭建MongoDB環(huán)境,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧

1.MongoDB簡單說明

a MongoDB是由C++語言編寫的一個(gè)基于分布式文件存儲(chǔ)的開源數(shù)據(jù)庫系統(tǒng),它的目的在于為WEB應(yīng)用提供可擴(kuò)展的高性能數(shù)據(jù)存儲(chǔ)解決方案。

b MongoDB是一個(gè)介于關(guān)系型數(shù)據(jù)庫和非關(guān)系型數(shù)據(jù)庫之間的產(chǎn)品,是非關(guān)系型數(shù)據(jù)庫當(dāng)中功能最豐富,最像關(guān)系型數(shù)據(jù)庫的。它支持的數(shù)據(jù)結(jié)構(gòu)非常松散,會(huì)將數(shù)據(jù)存儲(chǔ)為一個(gè)文檔,數(shù)據(jù)結(jié)構(gòu)由鍵值對(duì)(key=>value)組成,是類似于json的bson格式,

c MongoDB最大的特點(diǎn)就是它支持的查詢語言非常強(qiáng)大,其語法有點(diǎn)類似于面向?qū)ο蟮牟樵冋Z言,幾乎可以實(shí)現(xiàn)類似關(guān)系型數(shù)據(jù)庫單表查詢的絕大部分功能,而且還支持對(duì)數(shù)據(jù)建立索引。

d MongoDB的主要特點(diǎn)(來自于網(wǎng)上,主要為了我們初步了解)

d.1 MongoDB提供了一個(gè)面向文檔存儲(chǔ),操作起來比較簡單和容易的非關(guān)系型數(shù)據(jù)庫。

d.2 你可以在MongoDB記錄中設(shè)置任何屬性的索引來實(shí)現(xiàn)更快的排序。

d.3 你可以通過本地u或者網(wǎng)絡(luò)創(chuàng)建數(shù)據(jù)鏡像,這使得MongoDB含有更強(qiáng)的擴(kuò)展性。

d.4 如果負(fù)載的增加(需要更多的存儲(chǔ)空間和更強(qiáng)的處理能力),它可以分布在計(jì)算機(jī)網(wǎng)絡(luò)中的其它節(jié)點(diǎn)上,這就是所謂的分片。

d.5 MongoDB支持豐富的查詢表達(dá)式,查詢指令使用JSON形式的標(biāo)記,可輕易查詢文檔中內(nèi)嵌的對(duì)象和數(shù)組。       

d.6 MongoDB使用update()命令可以實(shí)現(xiàn)替換完成的文檔(數(shù)據(jù))或者一些指定的數(shù)據(jù)字段。       

d.7 MongoDB中的Map/Reduce主要是用來對(duì)數(shù)據(jù)進(jìn)行批量處理和聚合操作,Map函數(shù)調(diào)用emit(key,value)遍歷集合中所有的記錄,將key于value傳遞給Reduce函數(shù)進(jìn)行處理。另外Map函數(shù)和Reduce函數(shù)是使用JavaScript編寫的,所以可以通過db.runCommand和mapreduce命令來執(zhí)行MapReduce操作。       

d.8 GridFS是MongoDB中的一個(gè)內(nèi)置功能,可以用于存放大量小文件。

d.9 MongoDB允許在服務(wù)端執(zhí)行腳本,可以用JavaScript編寫某個(gè)函數(shù),直接在服務(wù)端執(zhí)行,也可以吧函數(shù)的定義存儲(chǔ)在服務(wù)端,下次直接調(diào)用即可。

d.10  MongoDB支持各種編程語言:RUBY、PYTHON、JAVA、C++、PHP、C#等多種語言并且MongoDB的安裝也非常簡單。

e 因?yàn)橄雽⑷罩竟芾砑械組ongoDB,所以簡單學(xué)習(xí)了一下,將學(xué)習(xí)的心得分享給大家。

f MongoDB官網(wǎng):http://www.mongodb.org/

2.準(zhǔn)備工作

a 通過上面簡單的介紹之后我們已經(jīng)了解了MongoDB的基本信息,那么接下來我們首先需要在Linux下搭建它并且來使用它。

b MongoDB包下載地址:http://www.mongodb.org/downloads

c 操作需要的軟件以及系統(tǒng)如下:虛擬機(jī)(Vmware),虛擬機(jī)中安裝的Centos系統(tǒng),Xshell,Xftp, MongoDB包。

3.MongoDB安裝

a 通過上面簡單的準(zhǔn)備工作之后,我們已經(jīng)擁有了可以安裝的包和發(fā)布的環(huán)境,如果上面沒有準(zhǔn)備充分,請(qǐng)自行準(zhǔn)備,下面我們開始進(jìn)行搭建環(huán)境

b 使用XShell連接Centos,連接成功后使用命令跳轉(zhuǎn)到local下面創(chuàng)建自己的文件夾kencery,在此文件夾下面創(chuàng)建mongoDB文件夾,命令如下:

b.1  (1):cd usr/local/    (2):mkdir kencery    (3):cd kencery/   (4):mkdir mongoDB(5):cd mongoDB/

c 然后使用Xftp將在上面下載的mongoDB包(mongodb-linux-x86_64-3.2.8.tgz)復(fù)制到mongoDB文件夾里面,并且將包解壓,解壓之后命名為mongoDB,如圖所示:

c.1 tar -zxvf mongodb-linux-x86_64-3.2.8.tgz

c.2 mv mongodb-linux-x86_64-3.2.8 mongodb

d 解壓之后跳轉(zhuǎn)到mongodb下進(jìn)行操作(cd mongodb/),如圖所示:

e 如上圖所示,您發(fā)現(xiàn)多了兩個(gè)文件夾,一個(gè)是db,一個(gè)是logs,這兩個(gè)文件夾是我們自己創(chuàng)建的,db文件夾的作用是存放數(shù)據(jù)庫目錄,logs文件夾的作用是存放mongoDB的操作日志信息,命令如下(此命令的執(zhí)行在軟件包解壓重命名之后跳轉(zhuǎn)到mongdb下面的執(zhí)行):   

e.1 mkdir db
e.3 mkdir logs

f 添加完成之后,啟動(dòng)mongoDB,驗(yàn)證是否安裝成功,這里指定的數(shù)據(jù)庫目錄選項(xiàng)為mongodb下創(chuàng)建的db,命令如下,如圖所示,則提示啟動(dòng)成功。

f.1 ./bin/mongod --dbpath /usr/local/kencery/mongoDB/mongodb/db

f.2 當(dāng)執(zhí)行命令的時(shí)候如上圖所示,我們發(fā)現(xiàn)出現(xiàn)了錯(cuò)誤,錯(cuò)誤信息是:(Failed to obtain address information for hostname bogon: Temporary failure in name resolution(獲取不到地址對(duì)應(yīng)的主機(jī)名)),這是因?yàn)閙ongoDB啟動(dòng)需要解析hosts,所以我們打開hosts給本地IP配置主機(jī)名bogon,命令如下:

(1) vim /etc/hosts,打開編輯器之后,將(127.0.0.1   bogon)這段命令放置在編輯器最后,保存并且關(guān)閉

(2) 重新啟動(dòng)mongoDB,發(fā)現(xiàn)錯(cuò)誤已經(jīng)消失,并且mogodb已經(jīng)啟動(dòng)。

g 驗(yàn)證mongoDB是否啟動(dòng),輸入命令lsof -i :27017,監(jiān)測(cè)端口已經(jīng)在使用中,所以說啟動(dòng)已經(jīng)完成。

4.MongoDB配置

a 通過上面的MongoDB安裝,我們已經(jīng)將其安裝成功并且啟動(dòng),但是發(fā)現(xiàn)啟動(dòng)太過于麻煩,所以需要我們自己給MongoDB配置配置文件,因MongoDB開發(fā)者沒有配置樣例,所以需要我們自己去創(chuàng)建并且寫入內(nèi)容

b 首先我們?cè)趍ongoDB解壓之后的包里面進(jìn)行操作,執(zhí)行以下命令,打開編輯器。

b.1 vim bin/mongodb.conf

c 打開編輯器之后將如下圖所示的內(nèi)容寫入到編輯器中,保證是正確的,如果你的安裝地址和我的不一致,則需要自己修改路徑,編輯完成之后保存。

d MongDB請(qǐng)命令參數(shù)說明:http://www.dbjr.com.cn/article/56898.htm

e 使用如下命令重新啟動(dòng)mongoDB,看是否配置文件起作用,命令如下

e.1

./bin/mongod --config /usr/local/kencery/mongoDB/mongodb/bin/mongodb.conf 


f 驗(yàn)證mongoDB是否啟動(dòng),輸入命令lsof -i :27017,監(jiān)測(cè)端口已經(jīng)在使用中,所以說啟動(dòng)已經(jīng)完成。

5.MongoDB設(shè)置為系統(tǒng)服務(wù)并且設(shè)置開機(jī)啟動(dòng)

a 通過上面簡單的操作,我們已經(jīng)將MongoDB配置文件配置完成,那么接下里我們將為MongoDB設(shè)置系統(tǒng)服務(wù)。

b.首先添加MongoDB系統(tǒng)服務(wù),命令如下:vim /etc/rc.d/init.d/mongod

c 打開編輯器后,我們將下面的配置粘貼進(jìn)去,然后保存

ulimit -SHn 655350
  #!/bin/sh
  # chkconfig: - 64 36
  # description:mongod
  case $1 in
  start)
  /usr/local/kencery/mongoDB/mongodb/bin/mongod --maxConns 20000 --config /usr/local/kencery/mongoDB/mongodb/bin/mongodb.conf
  ;;
 
  stop)
  /usr/local/kencery/mongoDB/mongodb/bin/mongo 127.0.0.1:27017/admin --eval "db.shutdownServer()"
  ;;
 
  status)
  /usr/local/kencery/mongoDB/mongodb/bin/mongo 127.0.0.1:27017/admin --eval "db.stats()"
  ;;
  esac

d 保存完成之后,添加腳本執(zhí)行權(quán)限,命令如下:chmod +x /etc/rc.d/init.d/mongod

e 啟動(dòng)MongoDB,如下圖所示,則說明啟動(dòng)成功

f 可以使用命令service mongod stop關(guān)閉MongoDB服務(wù)。

g 將此服務(wù)設(shè)置為開機(jī)啟動(dòng),命令如下:chkconfig mongod on,然后重新啟動(dòng)機(jī)器進(jìn)行測(cè)試,發(fā)現(xiàn)開機(jī)服務(wù)應(yīng)啟動(dòng)并且端口也在使用中。

h 驗(yàn)證mongoDB是否啟動(dòng),輸入命令lsof -i :27017,監(jiān)測(cè)端口已經(jīng)在使用中,所以說啟動(dòng)已經(jīng)完成。

6.MongoDB設(shè)置遠(yuǎn)程服務(wù)(建議只在內(nèi)網(wǎng)或者不可設(shè)置,不安全系數(shù)太高)

a 如果你的MongoDB運(yùn)行端口使用默認(rèn)的27017,你可以使用端口號(hào)為28017來訪問用戶界面,這是因?yàn)镸ongoDB的Web界面訪問端口比服務(wù)的端口多1000

b 設(shè)置遠(yuǎn)程訪問,既開放端口27017,28017

c 首先編輯iptables文件,打開編輯器,命令如下( vim /etc/sysconfig/iptable),輸入如下信息在編輯器的最后,最后保存。

-A INPUT -m state --state NEW -m tcp -p tcp --dport 27017  -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 28017 -j ACCEPT

d 重啟防火墻服務(wù),命令如下: service iptables restart

e.最后通過瀏覽器訪問MongDB的web頁面,如圖所示:則說明配置已經(jīng)成功。

f.因?yàn)橥ㄟ^遠(yuǎn)程服務(wù)訪問不安全,所以我們正常是不需要配置這步的,但是如果配置了之后,我們可以通過配置文件的屬性阻止其外部訪問

f.1 打開mongodb.config文件,將#rest=true屬性注釋之后,關(guān)閉保存。

f.2 關(guān)閉并且重啟mongoDB,然后在外面使用瀏覽器訪問發(fā)現(xiàn)已經(jīng)訪問不了。

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • MongoDB學(xué)習(xí)筆記之MapReduce使用示例

    MongoDB學(xué)習(xí)筆記之MapReduce使用示例

    這篇文章主要介紹了MongoDB學(xué)習(xí)筆記之MapReduce使用示例,本文直接給出實(shí)例代碼,需要的朋友可以參考下
    2015-07-07
  • 毫不費(fèi)力!在Ubuntu上安裝MongoDB7.0的簡易指南!

    毫不費(fèi)力!在Ubuntu上安裝MongoDB7.0的簡易指南!

    MongoDB是一種流行的NoSQL數(shù)據(jù)庫管理系統(tǒng),用于處理大量結(jié)構(gòu)化和半結(jié)構(gòu)化數(shù)據(jù),本文提供了在Ubuntu上安裝MongoDB?7.0的詳細(xì)步驟,以下步驟包含了在Ubuntu系統(tǒng)中安裝MongoDB的必要軟件包、配置MongoDB數(shù)據(jù)目錄、配置MongoDB數(shù)據(jù)庫的認(rèn)證方式等信息,需要的朋友可以參考下
    2023-10-10
  • CentOS 6.4創(chuàng)建Mongodb副本集

    CentOS 6.4創(chuàng)建Mongodb副本集

    這篇文章主要為大家詳細(xì)介紹了CentOS 6.4創(chuàng)建Mongodb副本集的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-10-10
  • 關(guān)于MongoDB謹(jǐn)防索引seek的效率問題詳析

    關(guān)于MongoDB謹(jǐn)防索引seek的效率問題詳析

    這篇文章主要給大家介紹了關(guān)于MongoDB謹(jǐn)防索引seek的效率問題的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用MongoDB具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • ubuntu mongodb安裝在哪個(gè)文件夾路徑詳解

    ubuntu mongodb安裝在哪個(gè)文件夾路徑詳解

    這篇文章主要為大家介紹了ubuntu mongodb安裝在哪個(gè)文件夾的安裝路徑詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-10-10
  • MongoDB分片測(cè)試

    MongoDB分片測(cè)試

    分片是mongoDB擴(kuò)展的一種方式。分片分割一個(gè)collection并將不同的部分存儲(chǔ)在不同的機(jī)器上,本文給大家介紹MongoDB分片測(cè)試,需要的朋友參考下吧
    2016-03-03
  • SpringBoot+MongoDB實(shí)現(xiàn)物流訂單系統(tǒng)的代碼

    SpringBoot+MongoDB實(shí)現(xiàn)物流訂單系統(tǒng)的代碼

    這篇文章主要介紹了SpringBoot+MongoDB實(shí)現(xiàn)物流訂單系統(tǒng)的代碼,本文通過圖文實(shí)例相結(jié)合給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-09-09
  • Mongodb常用的身份驗(yàn)證方式

    Mongodb常用的身份驗(yàn)證方式

    對(duì)MongoDB部署啟用訪問控制會(huì)強(qiáng)制執(zhí)行用戶身份驗(yàn)證,要求在登錄MongoDB系統(tǒng)用戶識(shí)別自己。 當(dāng)訪問啟用了訪問控制的MongoDB部署時(shí),用戶只能執(zhí)行由其角色確定的操作。
    2017-08-08
  • mongoDB使用投影剔除‘額外’字段的操作過程

    mongoDB使用投影剔除‘額外’字段的操作過程

    這篇文章主要給大家介紹了關(guān)于mongoDB使用投影剔除‘額外’字段的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • MongoDB憑什么躋身數(shù)據(jù)庫排行前五

    MongoDB憑什么躋身數(shù)據(jù)庫排行前五

    MongoDB以比去年同期超出65.96分的成績繼續(xù)雄踞榜單前五,這個(gè)增幅在全榜僅次于PostgreSQL的77.99,而其相對(duì)于4月份的6.10分的增長也是僅次于微軟SQL Server排名全榜第二
    2019-06-06

最新評(píng)論