MongoDB 介紹
之前學(xué)過 SQL Server
, MySQL
, SQLite
, 除了 SQL Server
學(xué)習(xí)過原理之外幌蚊,其它的也只是學(xué)習(xí)簡單的使用就草草了事了籍嘹,現(xiàn)在又開始入手 MongoDB
了强霎,其實(shí)個(gè)人感覺所有的數(shù)據(jù)庫操作起來都基本差不多御雕,并不難學(xué)愚臀。那么我為什么要學(xué)習(xí) MongoDB
呢瓦胎? 因?yàn)槲蚁胍嫒∥遗廊〉臄?shù)據(jù)秃踩,最近在學(xué)習(xí) Python
爬蟲艾猜,既然浪費(fèi)時(shí)間爬取了數(shù)據(jù)买喧,為什么不把它存取到數(shù)據(jù)庫中以供以后使用呢?
MongoDB
是一個(gè)介于關(guān)系數(shù)據(jù)庫和非關(guān)系數(shù)據(jù)庫之間的產(chǎn)品匆赃,是非關(guān)系數(shù)據(jù)庫當(dāng)中功能最豐富淤毛,最像關(guān)系數(shù)據(jù)庫的。MongoDB
把數(shù)據(jù)存取到硬盤上算柳,如果你追求較高的速度低淡,你可以選擇 Redis
數(shù)據(jù)庫,為什么它快瞬项,因?yàn)樗苯影褦?shù)據(jù)存取到內(nèi)存中蔗蹋。
好了,不啰嗦了囱淋,下面開始安裝 MongoDB
, 下載地址 , 選擇適合自己系統(tǒng)的版本進(jìn)行下載猪杭,下載完畢之后進(jìn)行安裝,由于安裝過程比較簡單妥衣,就不在多介紹 皂吮。
如果你把 MongoDB
安裝在系統(tǒng)盤戒傻,那么我推薦你將其移出來,為什么呢蜂筹?因?yàn)楫?dāng)我在系統(tǒng)盤中開啟 MongoDB
的時(shí)候出現(xiàn)閃退現(xiàn)象稠鼻,始終無法正常使用。如果你是 WIndows
操作系統(tǒng)狂票,那么當(dāng)你安裝完畢之后候齿,你進(jìn)入 MongoDB
文件夾可能是這樣的
你會(huì)發(fā)現(xiàn)自己沒有 data
文件夾,這個(gè)是我自己創(chuàng)建的闺属,用于存儲(chǔ)數(shù)據(jù)的路徑慌盯,你可以在任意地方創(chuàng)建它。創(chuàng)建完畢后掂器,我們可以創(chuàng)建一個(gè) Windows
批命令用于啟動(dòng) MongoDB
亚皂,如下所示
右擊編輯,寫入內(nèi)容
mongod --dbpath F:\MongoDB\Server\3.2\bin/data
注意国瓮, dbpath
后面的文件路徑就是你將要存取數(shù)據(jù)的路徑灭必,配置好之后,你可以雙擊該批命令啟動(dòng) MongoDB
乃摹,大家也注意到禁漓,由于該批命令使用了 mongod
命令,所以要和mongod
在同一路徑下孵睬,但是該路徑的層級比較深播歼,如果我們每次啟動(dòng)都要去找它,這未免也太麻煩了吧掰读?所以我建議將批命令的路徑寫入環(huán)境變量秘狞,寫入之后就可以直接在命令行啟動(dòng),就像我這樣
好了蹈集,這個(gè)時(shí)候我們已經(jīng)啟動(dòng) MongoDB
了烁试,有的人該想了,就讓我用命令行操作嗎拢肆?這么麻煩减响?不能搞個(gè)可視化工具嗎?當(dāng)然可以善榛,下面我們就來介紹 MongoDB
的可視化工具辩蛋。
MongoDB 可視化工具
一開始我使用的使 MongoVUE
,但是在使用的過程中出現(xiàn)了問題移盆,插入了數(shù)據(jù)竟然看不到悼院,我的天,看不到數(shù)據(jù)我要你何用咒循?然后又瞄上了一個(gè)軟件 MongoBooster
据途,用起來非常好用绞愚,你可以去官網(wǎng) http://mongobooster.com
去下載軟件,下載完畢以后首先創(chuàng)建一個(gè) Connection
颖医,默認(rèn)就可以
點(diǎn)擊 Save & Connect
就可以連接到本地?cái)?shù)據(jù)庫了位衩,不過這個(gè)時(shí)候只能看到一個(gè)名為 local
的數(shù)據(jù)庫。
Python 連接 MongoDB
首先要去 http://www.lfd.uci.edu/~gohlke/pythonlibs
下載支持庫 pymongo
熔萧,下載完畢后糖驴,將解壓后的三個(gè)文件夾 bson, gridfs, pymongo
復(fù)制到 Python
安裝目錄的 Lib
路徑下,然后我們就可以在 Python
中使用 MongoDB
了佛致,如下是一種簡單的用法
# coding=utf-8
import pymongo
# 連接到 MongoDB 數(shù)據(jù)庫
connection = pymongo.MongoClient()
# 創(chuàng)建一個(gè)名為 TestDB 的數(shù)據(jù)庫
tdb = connection.TestDB
# 創(chuàng)建一個(gè)名為 test 的表
post_info = tdb.test
# 聲明一個(gè)字典
person = {'name': 'Jack', 'age': '25', 'tel': '18895330799'}
# 將名為 person 的字典存進(jìn)數(shù)據(jù)庫
post_info.insert_one(person).inserted_id
執(zhí)行過之后贮缕,我們刷新一下 MongoBooster
看一下結(jié)果
好了,今天就講到這里俺榆,睡覺咯感昼,明天回學(xué)校上學(xué)去啦。