溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

MongoDB介紹以及安裝

發(fā)布時間:2020-07-13 02:43:01 來源:網(wǎng)絡(luò) 閱讀:794 作者:夢想不遙遠(yuǎn) 欄目:數(shù)據(jù)庫

一、MongoDB簡介
 
MongoDB是一個高性能,開源,無模式的文檔型數(shù)據(jù)庫,是當(dāng)前NoSql數(shù)據(jù)庫中比較熱門的一種。它在許多場景下可用于替代傳統(tǒng)的關(guān)系型數(shù)據(jù)庫或鍵/值存儲方式。Mongo使用C++開發(fā)。Mongo的官方網(wǎng)站地址是:http://www.mongodb.org/,讀者可以在此獲得更詳細(xì)的信息。

 
1、什么是NoSql?
NoSql,全稱是 Not Only Sql,指的是非關(guān)系型的數(shù)據(jù)庫。下一代數(shù)據(jù)庫主要解決幾個要點:非關(guān)系型的、分布式的、開源的、水平可擴展的。原始的目的是為了大規(guī)模web應(yīng)用,這場運動開始于2009年初,通常特性應(yīng)用如:模式自由、支持簡易復(fù)制、簡單的API、最終的一致性(非ACID)、大容量數(shù)據(jù)等。NoSQL被我們用得最多的當(dāng)數(shù)key-value存儲,當(dāng)然還有其他的文檔型的、列存儲、圖型數(shù)據(jù)庫、xml數(shù)據(jù)庫等。
 
2、特點:
高性能、易部署、易使用,存儲數(shù)據(jù)非常方便。主要功能特性有:
1)面向集合存儲,易存儲對象類型的數(shù)據(jù)。
2)模式自由。
3)支持動態(tài)查詢。
4)支持完全索引,包含內(nèi)部對象。
5)支持查詢。
6)支持復(fù)制和故障恢復(fù)。
7)使用高效的二進制數(shù)據(jù)存儲,包括大型對象(如視頻等)。
8)自動處理碎片,以支持云計算層次的擴展性
9)支持PythonPHP,RubyJava,CC#,JavascriptPerlC++語言的驅(qū)動程序,社區(qū)中也提供了對Erlang.NET等平臺的驅(qū)動程序。
10)文件存儲格式為BSON(一種JSON的擴展)。
11)可通過網(wǎng)絡(luò)訪問。
 
3、功能:
1)面向集合的存儲:適合存儲對象及JSON形式的數(shù)據(jù)。
2)動態(tài)查詢:Mongo支持豐富的查詢表達(dá)式。查詢指令使用JSON形式的標(biāo)記,可輕易查詢文檔中內(nèi)嵌的對象及數(shù)組。
3)完整的索引支持:包括文檔內(nèi)嵌對象及數(shù)組。Mongo的查詢優(yōu)化器會分析查詢表達(dá)式,并生成一個高效的查詢計劃。
4)查詢監(jiān)視:Mongo包含一個監(jiān)視工具用于分析數(shù)據(jù)庫操作的性能。
5)復(fù)制及自動故障轉(zhuǎn)移:Mongo數(shù)據(jù)庫支持服務(wù)器之間的數(shù)據(jù)復(fù)制,支持主-從模式及服務(wù)器之間的相互復(fù)制。復(fù)制的主要目標(biāo)是提供冗余及自動故障轉(zhuǎn)移。
6)高效的傳統(tǒng)存儲方式:支持二進制數(shù)據(jù)及大型對象(如照片或圖片)
7)自動分片以支持云級別的伸縮性:自動分片功能支持水平的數(shù)據(jù)庫集群,可動態(tài)添加額外的機器。

 
4、適用場合:
1)網(wǎng)站數(shù)據(jù):Mongo非常適合實時的插入,更新與查詢,并具備網(wǎng)站實時數(shù)據(jù)存儲所需的復(fù)制及高度伸縮性。
2)緩存:由于性能很高,Mongo也適合作為信息基礎(chǔ)設(shè)施的緩存層。在系統(tǒng)重啟之后,由Mongo搭建的持久化緩存層可以避免下層的數(shù)據(jù)源 過載。
3)大尺寸,低價值的數(shù)據(jù):使用傳統(tǒng)的關(guān)系型數(shù)據(jù)庫存儲一些數(shù)據(jù)時可能會比較昂貴,在此之前,很多時候程序員往往會選擇傳統(tǒng)的文件進行存儲。
4)高伸縮性的場景:Mongo非常適合由數(shù)十或數(shù)百臺服務(wù)器組成的數(shù)據(jù)庫。Mongo的路線圖中已經(jīng)包含對MapReduce引擎的內(nèi)置支持。
5)用于對象及JSON數(shù)據(jù)的存儲:MongoBSON數(shù)據(jù)格式非常適合文檔化格式的存儲及查詢。


二、下載安裝和配置:
1、解壓

# tar -zxvf mongodb-linux-x86_64-2.4.9.tgz 
# mv mongodb-linux-x86_64-2.4.9 /usr/local/mongodb

2、創(chuàng)建數(shù)據(jù)和日志目錄

# mkdir -p /usr/local/mongodb/data
# mkdir -p /usr/local/mongodb/logs

3、命令路徑優(yōu)化

# ln -s /usr/local/mongodb/bin/mongo  /usr/sbin/mongo
# ln -s /usr/local/mongodb/bin/mongodump  /usr/sbin/mongodump
# ln -s /usr/local/mongodb/bin/mongod  /usr/sbin/mongod
# ln -s /usr/local/mongodb/bin/mongorestore  /usr/sbin/mongorestore

4、啟動mongodb

# mongod --dbpath=/usr/local/mongodb/data/ --logpath=/usr/local/mongodb/db.logs --fork -smallfiles

5、查看mongodb的運行狀態(tài)

# ps -aux | grep mongo
# netstat -anpt | grep mongo

6、添加為自動啟動

# Vim /etc/rc.d/rc.local
添加:
/usr/local/mongodb/bin/mongod --dbpath=/usr/local/mongodb/data/ --logpath=/usr/local/mongodb/db.logs --fork -smallfiles

7、登錄mongodb數(shù)據(jù)庫(默認(rèn)是test數(shù)據(jù)庫)

# /usr/local/mongodb/bin/mongo



向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI