MongoDB的安裝和使用

一、Mongo的安裝和使用
先下載安裝Mongo到官網(wǎng)下載對(duì)應(yīng)的32為的版本 然后安裝
找到官網(wǎng)的下載中心
https://www.mongodb.com/download-center#community
找到 Previous Releases
找到對(duì)應(yīng)window Vista 32-bit withoutSSL i386
注意:32-bit builds are limited to around 2GB of data. In general you should use the 64 bit builds. See here for more information.

在C盤目錄下面建立data目錄
data目錄下面建立db和log: 2個(gè)目錄----目錄一定要先創(chuàng)建
注意實(shí)際安裝測(cè)試時(shí)需要建立2個(gè)對(duì)應(yīng)的目錄結(jié)構(gòu)

1.windows32位系統(tǒng)組裝安裝自啟動(dòng)代碼
以管理員的方式運(yùn)行下面的命令
如果安裝失敗可以查看日志信息 查看安裝的錯(cuò)誤信息
mongod --dbpath="C:\data\db" --logpath="C:\data\log\log.txt" --serviceName MongoDB --journal --storageEngine=mmapv1 --install

注意:以管理員方式啟動(dòng)
/*
--dapath 指定數(shù)據(jù)的文件存儲(chǔ)路徑
--logpath 數(shù)據(jù)的操作日志
--serviceName 服務(wù)名稱 建議MongoDB
--serviceDisplayName window組件的顯示名稱 可以跟服務(wù)名稱不一致
指定在32位下面的存儲(chǔ)格式
--journal --storageEngine=mmapv1 --install

卸載:
mongod --remove --serviceName "H512MongoDB" --journal
*/
mongod --dbpath="C:\h512database\db" --logpath="C:\h512database\log\log.txt" --serviceName H512MongoDB --serviceDisplayName H512MongoDB --journal --storageEngine=mmapv1 --install
// 32位系統(tǒng) 必須設(shè)置存儲(chǔ)格式為 mmapv1
// 63位系統(tǒng) 不需要設(shè)置

64位安裝
mongod --dbpath="C:\Program Files\MongoDB\data\db" --logpath="C:\Program Files\MongoDB\data\db\log.txt" --serviceName MongoDB

2.然后啟動(dòng)
必須在管理員的權(quán)限下啟動(dòng)
net start MongoDB

net stop MongoDB

3.刪除對(duì)應(yīng)的服務(wù) 修改最后一個(gè)為--remove就可以了
mongod --dbpath="C:\data\db" --logpath="C:\data\log\log.txt" --serviceName MongoDB --journal --storageEngine=mmapv1 --remove

4.輸入mongo(數(shù)據(jù)庫的連接工具) 連接Mongo數(shù)據(jù)庫查看能否連接成功

show dbs //查看對(duì)應(yīng)的所有的數(shù)據(jù)庫
use admin //客戶端 客戶端 手動(dòng)關(guān)閉數(shù)據(jù)庫
db.shutdownServer();

二 贮懈、Mongo的基本使用
Mongo的介紹 NOSQL數(shù)據(jù)庫類型
show dbs // 查看已經(jīng)存在的集合數(shù)據(jù)

db.help() // 查看數(shù)據(jù)庫的所有相關(guān)的方法

db.stats() // 查看數(shù)據(jù)庫的狀態(tài)

db.version() // 查看當(dāng)前db的版本

db.getMongo() // 查看當(dāng)前db的鏈接地址

use blog // 先切換到對(duì)應(yīng)的數(shù)據(jù)集合類
// 切換數(shù)據(jù)庫
// 數(shù)據(jù)庫有多個(gè) 每次只能操作一個(gè)數(shù)據(jù)庫
// 數(shù)據(jù)庫里面的是集合 理解為表

show collections // 查看集合中的所有的數(shù)據(jù)信息

db.users.insert({"book_id":1});

db.users.find().count();

db.users.find({"book_id":1});

//這個(gè)主鍵的id 是自動(dòng)生成的數(shù)據(jù)

db.users.find({"_id":ObjectId("58bcd55fbcbc58571cb74cd6")});

db.userInfo.find({name: /mongo/});

//相當(dāng)于%%select * from userInfo where name like ‘%mongo%’;

db.userInfo.find({name: /^mongo/});

//select * from userInfo where name like ‘mongo%’;

// update 第一個(gè)是條件 第二個(gè)是要修改的值
db.users.update({"book_id":1},{$set:{"book_id":8}});

//執(zhí)行后顯示: WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

db.users.update({"book_id":1},{$set:{"book_di":10}},{"multi":true});

// 注意update 和 save的區(qū)別
update有3個(gè)參數(shù)
save方法只有一個(gè)參數(shù) 并且 如果更新的鍵沒有 則會(huì)替換整個(gè)字段 會(huì)丟失一些字段信息
db.user.save({"_id":ObjectId("58bce7acbcbc58571cb74cd9"),"book_name":"ios"});

// 刪除 remove方法只有一個(gè)條件
db.user.insert({"username":"david"});
db.user.insert({"username":"david"});
db.user.insert({"username":"david"});

先執(zhí)行前面的插入3條數(shù)據(jù) 然后在執(zhí)行后面的刪除 刪除前面插入的3條數(shù)據(jù)信息

db.user.remove({"username":"david"});

// 第2個(gè)參數(shù)默認(rèn)為false 如果設(shè)置為true 則只刪除 查詢到的第一條記錄信息
// 第2個(gè)參數(shù) 表示是否是單行刪除 默認(rèn)為false 表示不是單行刪除
db.user.remove({"username":"david"},true);

/*
find:查詢到的集合信息
{ "_id" : ObjectId("58bce5e3bcbc58571cb74cd8"), "book_id" : 999, "book_name" : "html5" }
{ "_id" : ObjectId("58bce7acbcbc58571cb74cd9"), "book_name" : "ios" }
{ "_id" : ObjectId("58bceadfbcbc58571cb74cde"), "username" : "david" }
{ "_id" : ObjectId("58bceadfbcbc58571cb74cdf"), "username" : "david" }
{ "_id" : ObjectId("58bceae1bcbc58571cb74ce0"), "username" : "david" }
*/

// 空條件 表示刪除集合中所有的元素信息
// 類似清空表中的數(shù)據(jù) 但是表不刪除 mongodb中叫索引(即表索引)不刪除
db.user.remove({});

// 刪除整個(gè)集合 類似刪除表的操作
// 刪除整個(gè)文檔 和 文檔對(duì)應(yīng)的索引 即表名稱
db.user.drop();

db.dropDatabase(); 刪除當(dāng)前所在的數(shù)據(jù)庫信息

Mac下面 mongo命令行窗口中 輸入cls 清除屏幕的信息

// 全部替換為后面的值
db.testuser.update({username:"tom"},{"username":"jack","age":20,sex:1});

// 設(shè)置數(shù)據(jù)字段中的屬性值 自增顯示
db.testuser.update({"username":"tom"},{$inc:{age:1}});

// 刪除某個(gè)字段
db.testuser.update({username:"tom"},{$unset:{sex:1}});

// 可以向記錄中添加或修改 一個(gè)值 不存在就添加 存在就修改
db.testuser.update({username:"jack"},{$set:{like:[]}});

// pull 向數(shù)組中刪除一條記錄

db.testuser.update({"username":"jack"},{"$pull":{like:["develpment"]}})

// push 向數(shù)組中添加一條記錄
db.testuser.update({"username":"jack"},{"$push":{like:["develpment"]}})

// push 向數(shù)組中添加多條信息
db.testuser.update({"username":"jack"},{$pushAll:{like:["sport","computer"]}})

// 刪除數(shù)組中的最后一個(gè)值
db.testuser.update({"username":"jack"},{$pop:{like:1}})

// 刪除數(shù)組中的第一個(gè)值
db.testuser.update({"username":"jack"},{$pop:{like:-1}})

db.testuser.remove({});

db.testuser.remove({username:"david"});

db.testuser.drop();

三、數(shù)據(jù)庫的備份和恢復(fù)

// 從制度的位置恢復(fù)數(shù)據(jù)庫
mongodump -d blog -o /testData

mongorestore -d blogtest /testData/blog

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末鹦倚,一起剝皮案震驚了整個(gè)濱河市涩赢,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌耸彪,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,464評(píng)論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件忘苛,死亡現(xiàn)場(chǎng)離奇詭異蝉娜,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)扎唾,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,033評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門召川,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人胸遇,你說我怎么就攤上這事荧呐。” “怎么了纸镊?”我有些...
    開封第一講書人閱讀 169,078評(píng)論 0 362
  • 文/不壞的土叔 我叫張陵倍阐,是天一觀的道長。 經(jīng)常有香客問我薄腻,道長,這世上最難降的妖魔是什么届案? 我笑而不...
    開封第一講書人閱讀 59,979評(píng)論 1 299
  • 正文 為了忘掉前任庵楷,我火速辦了婚禮,結(jié)果婚禮上楣颠,老公的妹妹穿的比我還像新娘尽纽。我一直安慰自己,他們只是感情好童漩,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,001評(píng)論 6 398
  • 文/花漫 我一把揭開白布弄贿。 她就那樣靜靜地躺著,像睡著了一般矫膨。 火紅的嫁衣襯著肌膚如雪差凹。 梳的紋絲不亂的頭發(fā)上期奔,一...
    開封第一講書人閱讀 52,584評(píng)論 1 312
  • 那天,我揣著相機(jī)與錄音危尿,去河邊找鬼呐萌。 笑死,一個(gè)胖子當(dāng)著我的面吹牛谊娇,可吹牛的內(nèi)容都是我干的肺孤。 我是一名探鬼主播,決...
    沈念sama閱讀 41,085評(píng)論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼济欢,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼赠堵!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起法褥,我...
    開封第一講書人閱讀 40,023評(píng)論 0 277
  • 序言:老撾萬榮一對(duì)情侶失蹤茫叭,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后挖胃,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體杂靶,經(jīng)...
    沈念sama閱讀 46,555評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,626評(píng)論 3 342
  • 正文 我和宋清朗相戀三年酱鸭,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了吗垮。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,769評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡凹髓,死狀恐怖烁登,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情蔚舀,我是刑警寧澤饵沧,帶...
    沈念sama閱讀 36,439評(píng)論 5 351
  • 正文 年R本政府宣布,位于F島的核電站赌躺,受9級(jí)特大地震影響狼牺,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜礼患,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,115評(píng)論 3 335
  • 文/蒙蒙 一是钥、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧缅叠,春花似錦悄泥、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,601評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至领曼,卻和暖如春鸥鹉,著一層夾襖步出監(jiān)牢的瞬間蛮穿,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,702評(píng)論 1 274
  • 我被黑心中介騙來泰國打工宋舷, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留绪撵,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 49,191評(píng)論 3 378
  • 正文 我出身青樓祝蝠,卻偏偏與公主長得像音诈,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子绎狭,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,781評(píng)論 2 361

推薦閱讀更多精彩內(nèi)容

  • 首先熟悉兩個(gè)相關(guān)的基本概念: **mongod 是用來連接到mongodb數(shù)據(jù)庫服務(wù)器的细溅,即服務(wù)器端。mongo ...
    sxtra閱讀 52,533評(píng)論 14 46
  • 在mac上的安裝 使用homebrew來為你的機(jī)器架設(shè)mongodb鍵入如下命令brew install mong...
    jsondream閱讀 3,758評(píng)論 0 17
  • 適用場(chǎng)景:持久化緩存層,高效的實(shí)時(shí)性,用于對(duì)象及json數(shù)據(jù)的存儲(chǔ),高伸縮性的場(chǎng)景,大尺寸儡嘶,低價(jià)值的數(shù)據(jù)存儲(chǔ) 不適...
    vinbrave閱讀 420評(píng)論 0 1
  • homebrew安裝mongodb 創(chuàng)建文件夾和修改權(quán)限 開啟mongodb服務(wù) 連接mongodb 有時(shí)候服務(wù)開...
    不系流年系乾坤閱讀 307評(píng)論 0 0
  • show dbs // 查看已經(jīng)存在的集合數(shù)據(jù) db.help() // 查看數(shù)據(jù)庫的所有相關(guān)的方法...
    丶Arrow閱讀 334評(píng)論 1 2