主頁(yè) > 知識(shí)庫(kù) > 在Mac OS上安裝使用MongoDB的教程

在Mac OS上安裝使用MongoDB的教程

熱門標(biāo)簽:Linux服務(wù)器 AI電銷 服務(wù)外包 鐵路電話系統(tǒng) 網(wǎng)站排名優(yōu)化 百度競(jìng)價(jià)排名 呼叫中心市場(chǎng)需求 地方門戶網(wǎng)站

概念
MongoDB 是一個(gè)跨平臺(tái)的,面向文檔的數(shù)據(jù)庫(kù),提供高性能,高可用性和可擴(kuò)展性方便。 MongoDB 工作在收集和文件的概念。

什么是NoSql?
NoSql,全稱是 Not Only Sql,指的是非關(guān)系型的數(shù)據(jù)庫(kù)。下一代數(shù)據(jù)庫(kù)主要解決幾個(gè)要點(diǎn):非關(guān)系型的、分布式的、開源的、水平可擴(kuò)展的。原始的目的是為了大規(guī)模web應(yīng)用,這場(chǎng)運(yùn)動(dòng)開始于2009年初,通常特性應(yīng)用如:模式自由、支持簡(jiǎn)易復(fù)制、簡(jiǎn)單的API、最終的一致性(非ACID)、大容量數(shù)據(jù)等。NoSQL被我們用得最多的當(dāng)數(shù)key-value存儲(chǔ),當(dāng)然還有其他的文檔型的、列存儲(chǔ)、圖型數(shù)據(jù)庫(kù)、xml數(shù)據(jù)庫(kù)等。

為什么要使用MongoDB
JSON風(fēng)格文件的形式,面向文檔存儲(chǔ):數(shù)據(jù)存儲(chǔ)

  • 對(duì)任何屬性可索引
  • 復(fù)制和高可用性
  • 自動(dòng)分片
  • 豐富的查詢
  • 快速就地更新

MongoDB的專業(yè)技術(shù)支持
應(yīng)該在哪里使用MongoDB?

  • 大數(shù)據(jù)
  • 內(nèi)容管理和交付
  • 移動(dòng)和社交基礎(chǔ)設(shè)施
  • 用戶數(shù)據(jù)管理
  • 數(shù)據(jù)平臺(tái)

MongoDB是一個(gè)介于關(guān)系數(shù)據(jù)庫(kù)和非關(guān)系數(shù)據(jù)庫(kù)之間的產(chǎn)品,是非關(guān)系數(shù)據(jù)庫(kù)當(dāng)中功能最豐富,最像關(guān)系數(shù)據(jù)庫(kù)的。他支持的數(shù)據(jù)結(jié)構(gòu)非常松散,是類似json的bson格式,因此可以存儲(chǔ)比較復(fù)雜的數(shù)據(jù)類型。

基本的用法是存儲(chǔ)JSON數(shù)據(jù),這很適合JavaScript程序。其特性如下:

   1. 沒有表結(jié)構(gòu)的概念,每條記錄可以有完全不同的結(jié)構(gòu)
   2. 業(yè)務(wù)開發(fā)方便快捷
   3. sql數(shù)據(jù)庫(kù)需要事先定義表結(jié)構(gòu)再使用
在Mac下安裝MongoDB
第一種、用瀏覽器或者第三方工具下載
當(dāng)前版本的下載地址: http://downloads.mongodb.org/osx/mongodb-osx-x86_64-2.4.6.tgz

或者第二種、打開終端,使用以下命令行下載:

curl http://downloads.mongodb.org/osx/mongodb-osx-x86_64-2.4.6.tgz > mongodb.tgz

安裝成功之后,“mongod”命令啟動(dòng)mongo數(shù)據(jù)庫(kù)。瀏覽器下輸入http://127.0.0.1:28017 如果能正常顯示mongo數(shù)據(jù)庫(kù)的信息,則表示啟動(dòng)成功。

成功后的界面:

安裝步驟
1.首先在終端輸入ls,列出目錄,找到你的mongodb文件,以tgz結(jié)尾的

2.打開終端,輸入tar -zxvf mongodb-osx-x86_64-2.4.6,當(dāng)然各自的版本號(hào)自己對(duì)應(yīng)正確了啊。

3.將解壓的安裝文件移動(dòng)到你所喜歡的位置:

mv -n ~/Downloads/mongodb-osx-x86_64-2.4.6 ~/Applications/mongodb/

我的解壓目錄是Downloads,默認(rèn)移到Applications的mongodb文件夾是看不見的

4、在根目錄 / 下創(chuàng)建  data/db 目錄,用于放置mongodb數(shù)據(jù),并且給該目錄設(shè)置權(quán)限

sudo mkdir -p /data/db
sudo chown -R trigkit4 /data

5.啟動(dòng)mongodb 服務(wù)

打開終端,輸入cd Applications/mongodb/bin,回車后,再輸入./mongod

6.打開另外一個(gè)終端,輸入Applications/mongodb/bin,回車,輸入 ./mongo

文檔
文檔是MongoDB的核心概念,多個(gè)鍵及其關(guān)聯(lián)的值有序地放置在一起便是文檔。 在js里,文檔表示為對(duì)象:

{"greenting" : "Hello,world!"}

這個(gè)對(duì)象只有一個(gè)鍵"greeting",其對(duì)應(yīng)的值"Hello,world!"

文檔的鍵是字符串,除少數(shù)例外情況,鍵可以使用任意UTF-8字符:

 - 鍵不能含有\(zhòng)0(空字符)。這個(gè)字符用來(lái)表示鍵的結(jié)尾
 - .和$有特別的意義,只有當(dāng)特定環(huán)境下才能使用,通常來(lái)說(shuō)是被保留了
 - 以下劃線"_"開頭的鍵是保留的,雖然不是嚴(yán)格要求的
MongoDB不單區(qū)分類型,也區(qū)分大小寫,還有,MongoDB的文檔不能有重復(fù)的鍵,例如下面的文檔是非法的:

{"greeting":"Hello,world!","greeting":"Hello,mongoDB!"}

集合
集合是一組文檔。如果說(shuō)MongoDB中的文檔類似于關(guān)系型數(shù)據(jù)庫(kù)中的行,那么集合就如同表。

無(wú)模式
集合是無(wú)模式的。這意味著集合里面的文檔可以是各式各樣的,例如下面兩個(gè)文檔可以存在于同一個(gè)集合里面:

{"greeting": "Hello,world!"}
{"foo": 5}

命名
我們可以通過名字來(lái)標(biāo)示集合。集合名可以是滿足下列條件的UTF-8條件

 - 集合名不能是空字符串""。
 - 集合名不能含有\(zhòng)0字符(空字符)
 - 集合名不能以"system."開頭,這是為系統(tǒng)集合保留的前綴
 - 用戶創(chuàng)建的集合名字不能含有保留字符$
子集合
組織集合的一種慣例是使用"."字符分開的按命名空間劃分的子集合。

Shell中的基本操作
在shell查看數(shù)據(jù)會(huì)用到4個(gè)基本操作:創(chuàng)建、讀取、更新和刪除(CRUD)

數(shù)據(jù)庫(kù)
MongoDB中多個(gè)文檔組成集合,同樣多個(gè)集合可以組成數(shù)據(jù)庫(kù)。一個(gè)MongoDB實(shí)例可以承載多個(gè)數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)名可以是滿足以下條件的任意UTF-8字符串

 - 不能是空字符串("")
 - 不能含有''(空格)、.、$、/、\和\0(空字符)
 - 應(yīng)全部小寫
 - 最多64字節(jié)
數(shù)據(jù)類型
MongoDB支持許多數(shù)據(jù)類型的列表下面給出:

  • String : 這是最常用的數(shù)據(jù)類型來(lái)存儲(chǔ)數(shù)據(jù)。在MongoDB中的字符串必須是有效的UTF-8。
  • Integer : 這種類型是用來(lái)存儲(chǔ)一個(gè)數(shù)值。整數(shù)可以是32位或64位,這取決于您的服務(wù)器。
  • Boolean : 此類型用于存儲(chǔ)一個(gè)布爾值 (true/ false) 。
  • Double : 這種類型是用來(lái)存儲(chǔ)浮點(diǎn)值。
  • Min/ Max keys : 這種類型被用來(lái)對(duì)BSON元素的最低和最高值比較。
  • Arrays : 使用此類型的數(shù)組或列表或多個(gè)值存儲(chǔ)到一個(gè)鍵。
  • Timestamp : 時(shí)間戳。這可以方便記錄時(shí)的文件已被修改或添加。
  • Object : 此數(shù)據(jù)類型用于嵌入式的文件。
  • Null : 這種類型是用來(lái)存儲(chǔ)一個(gè)Null值。
  • Symbol : 此數(shù)據(jù)類型用于字符串相同,但它通常是保留給特定符號(hào)類型的語(yǔ)言使用。
  • Date : 此數(shù)據(jù)類型用于存儲(chǔ)當(dāng)前日期或時(shí)間的UNIX時(shí)間格式??梢灾付ㄗ约旱娜掌诤蜁r(shí)間,日期和年,月,日到創(chuàng)建對(duì)象。
  • Object ID : 此數(shù)據(jù)類型用于存儲(chǔ)文檔的ID。
  • Binary data : 此數(shù)據(jù)類型用于存儲(chǔ)二進(jìn)制數(shù)據(jù)。
  • Code : 此數(shù)據(jù)類型用于存儲(chǔ)到文檔中的JavaScript代碼。
  • Regular expression : 此數(shù)據(jù)類型用于存儲(chǔ)正則表達(dá)式

MongoDB的基本命令

use 命令
MongoDB use DATABASE_NAME 用于創(chuàng)建數(shù)據(jù)庫(kù)。該命令將創(chuàng)建一個(gè)新的數(shù)據(jù)庫(kù),如果它不存在,否則將返回現(xiàn)有的數(shù)據(jù)庫(kù)。

dropDatabase() 方法
MongoDB db.dropDatabase() 命令是用來(lái)刪除一個(gè)現(xiàn)有的數(shù)據(jù)庫(kù)。
dropDatabase() 命令的基本語(yǔ)法如下:

db.dropDatabase()
drop() 方法
MongoDB 的 db.collection.drop() 是用來(lái)從數(shù)據(jù)庫(kù)中刪除一個(gè)集合。

insert() 方法
要插入數(shù)據(jù)到 MongoDB 集合,需要使用 MongoDB 的  insert() 或 save() 方法。

find() 方法
要從MongoDB 查詢集合數(shù)據(jù),需要使用MongoDB 的 find() 方法。

pretty() 方法
結(jié)果顯示在一個(gè)格式化的方式,可以使用 pretty() 方法.

Limit() 方法
要限制 MongoDB 中的記錄,需要使用 limit() 方法。 limit() 方法接受一個(gè)數(shù)字型的參數(shù),這是要顯示的文檔數(shù)。
語(yǔ)法:

limit() 方法的基本語(yǔ)法如下

>db.COLLECTION_NAME.find().limit(NUMBER) 

MongoDB 數(shù)據(jù)轉(zhuǎn)儲(chǔ)
創(chuàng)建備份MongoDB中的數(shù)據(jù)庫(kù),應(yīng)該使用mongodump命令。
mongodump命令的基本語(yǔ)法如下:

>mongodump

恢復(fù)數(shù)據(jù)
恢復(fù)備份數(shù)據(jù)使用MongoDB 的 mongorerstore 命令。此命令將恢復(fù)所有的數(shù)據(jù)從備份目錄。
語(yǔ)法:

mongorestore命令的基本語(yǔ)法

>mongorestore

剩下的方法或命令大家都可以去網(wǎng)上搜索的,這里就不接著贅述了啊。

您可能感興趣的文章:
  • MongoDB的安裝及配置文件選項(xiàng)全解
  • Mac中mongoDB的安裝與卸載步驟詳解
  • mac下安裝和配置mongodb的步驟詳解
  • mac下使用brew 安裝mongodb的方法教程
  • MongoDB的安裝方法圖文教程
  • 在mac系統(tǒng)下安裝與配置mongoDB數(shù)據(jù)庫(kù)

標(biāo)簽:湖南 衡水 崇左 蘭州 仙桃 銅川 湘潭 黃山

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《在Mac OS上安裝使用MongoDB的教程》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266