分布式數(shù)據(jù)庫原理及應(yīng)用實驗3-MongoDB的基本操作查詢權(quán)限_第1頁
分布式數(shù)據(jù)庫原理及應(yīng)用實驗3-MongoDB的基本操作查詢權(quán)限_第2頁
分布式數(shù)據(jù)庫原理及應(yīng)用實驗3-MongoDB的基本操作查詢權(quán)限_第3頁
分布式數(shù)據(jù)庫原理及應(yīng)用實驗3-MongoDB的基本操作查詢權(quán)限_第4頁
分布式數(shù)據(jù)庫原理及應(yīng)用實驗3-MongoDB的基本操作查詢權(quán)限_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、、實驗?zāi)康恼莆誐ongoDB文檔查詢操作。掌握MongoDB權(quán)限操作。、實驗環(huán)境Window操作系統(tǒng)三、實驗內(nèi)容與實驗過程及分析(寫出詳細的實驗步驟,并分析實驗結(jié)果)實驗內(nèi)容:完成MongoDB文檔查詢操作。完成MongDB的權(quán)限操作。finddb.test.find().pretty()_id:ObjectId(5d7c976fe9b7f6cb1760a9fa),item:card,qty:35_id:ObjectId(5d7c976fe9b7f6cb1760a9fb),item:envelope,qty:20_id:ObjectId(5d7c976fe9b7f6cb1760a9fc),it

2、em:stamps,qty:30findOne方法,返回一個文檔.查詢條件與特定條件查詢.db.test.insertMany(name:mongodb教程,price:24,tags:mongodb,nosql,database,by:銳意教育,name:王二,age:null)acknowledged:true,insertedIds:ObjectId(5d7cb9b65b65a7871347d4ba),ObjectId(5d7cb9b65b65a7871347d4bb)card,qty:35envelope,qty:20stamps,qty:30mongodb教程,db.test.fin

3、d()_id:ObjectId(5d7c976fe9b7f6cb1760a9fa),item_id:ObjectId(5d7c976fe9b7f6cb1760a9fb),item_id:ObjectId(5d7c976fe9b7f6cb1760a9fc),item_id:ObjectId(5d7cb9b65b65a7871347d4ba),nameca、ii二i4/厶1price:24,tags:mongodb,nosql,database,by:銳意教育_id:ObjectId(5d7cb9b65b65a7871347d4bb),name王二,age:nullcard,qty:35envel

4、ope,qty:20stamps,qty:30mongodb教程,db.test.find(age:null)_id:ObjectId(5d7c976fe9b7f6cb1760a9fa),item_id:ObjectId(5d7c976fe9b7f6cb1760a9fb),item_id:ObjectId(5d7c976fe9b7f6cb1760a9fc),item_id:ObjectId(5d7cb9b65b65a7871347d4ba),nameprice_id_idprice_idprice_id1_id1_id_id1_id1_id:24,tags:mongodb,nosql,data

5、base,by:銳意教育:ObjectId(5d7cb9b65b65a7871347d4bb),name:王二,age:nulldb.test.find(tags:$size:3):ObjectId(5d7cb9b65b65a7871347d4ba),name:mongodb教程,:24,tags:mongodb,nosql,database,by:銳意教育db.test.find(tags:mongodb):ObjectId(5d7cb9b65b65a7871347d4ba),name:24,tags:mongodb,nosql,databasedb.test.find().limit(3)

6、:ObjectId(5d7c976fe9b7f6cb1760a9fa),:ObjectId(5d7c976fe9b7f6cb1760a9fb),:ObjectId(5d7c976fe9b7f6cb1760a9fc),db.test.find().skip(1):ObjectId(5d7c976fe9b7f6cb1760a9fb),:ObjectId(5d7c976fe9b7f6cb1760a9fc),:mongodb教程,by:銳意教育price1_id_id1_id1_id1_id1_id丿item丿item丿item丿item丿itemcard,qty:35-1丄envelope,qty丿

7、/7stamps,qty:2030/7:envelope,qty丿/7stamps,qty:2030:ObjectId(5d7cb9b65b65a7871347d4ba),name:24,tags:mongodb,nosql,:ObjectId(5d7cb9b65b65a7871347d4bb),db.test.find().sort(price:1):ObjectId(5d7c976fe9b7f6cb1760a9fa),:ObjectId(5d7c976fe9b7f6cb1760a9fb),:ObjectId(5d7c976fe9b7f6cb1760a9fc),:ObjectId(5d7cb

8、9b65b65a7871347d4bb),:ObjectId(5d7cb9b65b65a7871347d4ba),name:24,tags:mongodb,nosql,database,:mongodb教程,database,by:銳意教育-i-i:王二,age:nullname丿item丿item丿itemnamecard,qty:35envelope,qty:20stamps,qty:30-i-i王二,age:null:mongodb教程,by:銳意教育pricedb.test.find(tags:$regex:mongodb)_id:ObjectId(5d7cb9b65b65a78713

9、47d4ba),name:mongodb教程,ca、ii二i4/厶1price:24,tags:mongodb,nosql,database,by:銳意教育查詢例子:db.user.insert(name:wang,age:18,sex:female,favourite:fish,name:lou,age:20,sex:male,favourite:swim,name:liu,age:19,sex:female,favourite:eat,name:shi,age:22,sex:female,favourite:badminton1查詢?nèi)俊?盏牟樵兾臋n會匹配集合的全部內(nèi)容。如果不指定查詢文檔

10、,默認就是。dbtestdb.user,insert(.nani&:age:18,sex:feoiale.favourite:*fish*(,-.name!lou*,age:20j,ebx:male,favourite:.nime:1in,age:19,sex:f&inale.favourite:*?atI(,!.name:shi二age:22Ksex:female,favourite:badminton:_JBulkriteResult(.MfriteErrors*:$writeConcemErrora*:IE?crnln5ertedn!:4,nlipsierted:0?tiMatchsd*

11、:0?*nMeidified*:(KnEeDi.dved*:0卜upEerted*:.dbruserrfind()ti:Objectldi5d63f2a40447d56906603f4.H*.name:S-E&-18,V.*sex:female*favourit*e-iish-:ObjectId&db.user.find()2”_i:ObjectId(rf54S6Sf2a40447d56906608f4*)PFaraE:wane*.:1SPsex*:finial,favourite:fisV|!ObjectId.(Sd-SfiSf2a40447d56906608f5name!lau,*age:

12、20s*sex*!*aial&*favourite!lirini|_i!Objectld(rf5d.-SEi3f2a40447d56906608f6*name!1iu*,*agerf:19ssex*!feiiLalei,favourite!*sat_i(T:Objectld(54;963f2a40447d56906608f7i,)hnajii:Lhi:具呂呂:229*sex*:*fenale-hfavourite:badminton2.部分查詢db.user.rind(name;Lou*!)id:Objectld(JP5dS63f2a40447d56906608TG),|仙心::20,rsex

13、w:Paidfavourit總:swinT3鍵的篩選是查詢時只返回自己感興趣的鍵值,通過指定find的第二個參數(shù)來實現(xiàn)。這樣可以節(jié)省傳輸?shù)臄?shù)據(jù)量,又能節(jié)省客戶端解碼文檔的時間和內(nèi)存消耗。db.user.find,_id:0)Fame”;AwangA,age7:18,sex丹q-9/丹q亠丹:female,favourite:fish”name”;loujage:紗sex戡、科科r丄丹聚male、favourite:swini”name”:11U,age:19,sesfemale,favourite:eat77name:shi,age:丄厶/FffSGX:female,favourite:bad

14、minton4比較查詢:$lt,$lte,$gt,$gte,$ne和,=,!=是一一對應(yīng)的,它們可以組合起來以查找一個范圍namename一ylouAT.JV一:_1U,ageag.20hsex*:也,Jex:*njsls*.favourite*:J;dT.-:zemsLe:favouritE:Jt*namenamelou.、liiA:20.sas:19,S三、X*fl-舟:male.favourite:stied:fenale,favourite:naat*2Mvangag:18,2ffsex:ffifflale,favouritenam*;QhT冷呂r:19,sen:“fwna”,favo

15、uritenans:打age*:18,JUA-sex:female.favourite;Jimjage:19,ffjfsex:finialt.favomite:20,點JFsex:rniaL&,Y,favourite:口曲:shi,age:22,Ms&x:嚴(yán)fgotair*favourIte*nans:*1011*age*:耙sex*:male14,favourite*:nan謂:河呂hi篤*age:22,*爐:xfavourite:*理蠱-3SW1Hbadminto:點IJOT1swim:4rbadminto:i5關(guān)聯(lián)查詢:$in用于查詢一個鍵的多個值,$nin將返回與篩選數(shù)組中所有條件都不

16、匹配的文檔。將$in與$門0上組合可以實現(xiàn)$nin相同的效果。db.user.,find(age:fin:18:19、訶:ObjsetId5dB6af2a4O447d569066O8f4lid:%jec-ltd.5d863f2a4047d569066Wf6J),vidb.user,find(age:Jin:18,19)”_5:ObjectI社V西鳳佇胡陰4了日同90冏蔗14i,”_訶;QfcJ.-u:Id(JdS63i21cJ17d5C0G6O8fG).J:db,user.fin(i(aE&:fnin:.18.19.-:;r_id*:Objectd(RodS63f2a40447d569066O

17、8f3J),vi匚hf:ObjsetIdrSdflGSf2a40447d569D6608f7-*),Ddb.user,find(age:Jnct:Jiji:18,19)如_i捫:ObjeciIdt5d363f2a4O447d569Q6eO5f5,如”_訶:ObjectIdC5d863f2a4O447d569066O8f73,$or用于對多個鍵做or查詢。db.userfindtftorEage:.lite:18,affE::Obj&e11d*5d863f2a40447d56906608f4Paiiio:wang:JJag&v:18,二勒:female,favcurite:ObjectIdC5d

18、863f2a40447d&6906608f?),name:mhi,age*:22,me扎:士mW”favourite:badmin-:db.user,fijid(tiar,Famh:昨咤”,:盡箱黑feniale,favwr:teFimh*_id*:Obj&c11d(*5d86Sf2a40447d56906608f5*)hPaiiio:lou,&営g:2DhLojl:liialu:favour:te*:艸詢am/:wang、age.18,sex.|乜詢于sfavouri.f/h門:丹q#JFfflou.age*20,ffsex:iTq理JFniale.favour!t-e:聲JTTsvim.a

19、roJ:liliesage*u*sex:temaletfa-vourite:*eat*.-nanoG-:-*宴$shi,age22.sex:feniale3favourite*:badaimdb.ustr.fndage:null.d:).u2er.find(ittinzhu:rnill-::rT.二id:ir/id6.null查詢:null不僅能匹配自身,還能匹配鍵不存在的文檔。r|:JbjetrldC5dS63f2a40447d5690608fTJ,iObjettldf*5d863f2a40447d569066082.iObjrldC5d863f2a40447H5690C608f&).iOb

20、jetldb.user,find。*id:ObjectId*5-d8G3f2a40W7d5G9i&5608f4namfr:wang-,*age:18,*sex*:feniale*,.favourite:*fish*.*bbf:C*skate*.*Tabletiiuias*.volleyball*1_id*:ObjectI35d8G!Jf2a40釗:茍5G條)6GD&f5h*nam:IcilAage*:20,sex*:male*,favaurit*:卜hoi:-badminton-1*basketWll*ihaebsll|*id*-ObjectIdr&db.user,findtfhobby.2*

21、;besebair)*_id*:ObjectId*&dS63f2a4O4:17dS69066O口泗廠:Hu篤age*:20)冷ex.:male*ifavgurite*:I:badiriintcin!*basketball*,baseball$size:查詢指定長度的數(shù)組。:UiJlUUlBl:JLJiLiJdllD-db.user,findPhdbbv:rSsist*:S)itf:0bjectl-df5d862a4(H47d56G06608f4.飛盤me:已nf:age:18,sezlibT:扁t”曲jtinnis,vulWybQll*1_込:0bjectldf5d86Jf2a40447d56

22、906608f5.nans:.*:MdmiTiton,basketbal1/nbaseball.*_itT:OhjectIdC,5d863f234O447d509O66O8f6r)1hotby:breaking,swiming*,*_id:ObjectId(J5d863f3a4O447d56906608f7.vhobby:br&BkingJrswiinings:*feniale*afavour:*ish*aon,ag:20,sex:oale.farairiTE*:曲皿:*holHapdrinking1$slice:返回數(shù)組的一個子集合。db.find(TThDbh.Cid:ObjsetId(5

23、d863f2a40447d5fi906608f7),:dbrus&r.indliLhobby:Jslice:1fHid:ObjactId(5d863f2a40447d56906608f4,:valleyball1i:UbjecTId(5dS63f2a40447d569C-6608fj:baseball11i;_idJ:Objectld.db.user.find(Lhobby:Sslice:1,2)“Id:OhjactIdr5d863f2a4O447d569M6Mfr)h:Tabletinnis*,volWtIjsiK卜id:ObjectId(5d863f2a40447d569D6608fitb

24、asketball,baseballid*:ObjectId(5dfi63f240447d56906603f6*)hid:ObJectId(5d863f2a4D447d56905608f7);叮ame*;*1.百u:*agehobby*:breakinghobby:breakitigiibypbv:lSnsex:L8?sex血rr丹jtjf.*name:丄du?age:20,sexhobby:;上匾p”hobby*:-drinking1;jfjrfti*iC嚴(yán)zwangBage:1乩s&xTujnft2:louBage:20.sex:fenaleafavourite:fish0.1e*favo

25、uritswimfhoifemaUwfavouri.to*:fimh,alePfavouritsferualejwfavourite:*fishI*iI*掛上-4豪-丹malehfavourll&:wim,ho*hobbv*hobbv.-JF-I!svimngslp&psvinungadrinking9.內(nèi)嵌文檔査詢dbruserrsave(TfirstT-lastTnni&ngTiage-252019-09-22T1D:24:59.347+0800EQUERY11bread11SyntasError-missing-afterpropertyidfl(shell):1:41db.user,s

26、ave牡:am:firmt:v日ng,1日mt:mEiig,age:25:Wiit&R&sulL(nlns&rtedl:1?)pdbLiserFincUnamefirst:yangHnamelast:meng)H_ldT:Objec11dC5d86db9740447d!569Q6608f8).Pau/:#yang*nlast:meng.age:2510.$where查詢:$where查詢是MongoDB的高級查詢部分,可以執(zhí)行任意JavaScript作為查詢的一部分,是其他查詢方式的一個補充。db.userfiiid?5wh&re:functioni):forvarcurrentinthisj

27、.forvarotherinchislifcurrent!=other&tlis.atherj-returntrue;i已turnfalse:,h;$where查詢需要將每個文檔從BSON轉(zhuǎn)換為JavaScript對象,然后通過$where的表達式來運行,該過程不能利用索引,所以查詢速度較常規(guī)查詢慢很多。如果必須使用時,可以將常規(guī)查詢作為前置過濾,能夠利用索引的話可以使用索引根據(jù)非$where子句進行過濾,最后使用$where對結(jié)果進行調(diào)優(yōu)。另一種方式采用映射化簡-MapReduce.11游標(biāo):游標(biāo)是很有用的東西,MongoDB數(shù)據(jù)庫使用游標(biāo)來返回find的執(zhí)行結(jié)果??蛻舳耸褂糜螛?biāo)可以對最終結(jié)

28、果進行有效的控制,比如分頁,排序。2019_09_22Tl0:37:49.26H1-0800EQUERYthrsadl.SyntaxError:missing(azierfor(helI):1:S7|varCLirsor=db.user.Fird();cursor,foreack(function(s)print(x”nam&;);2Q19-03-22T10:41:39,C73+0800EQUERYCthread1TypeError:cursor,nreaclii.notafunction:cursor.forEacksadunin0.OOOCSlocal0.OOOCBtest0.OOOCSu

29、seadminswitchedtodbadmindb.createlTser(user:louMjpwd:3165188roles:(role:AdminAnyQatabas,db:亠且dniin*)Successfullyaddeduser!user:lou卜roles*:.,.”rol&v:userAdminAnyDataba.sehuseadminswitchedtodbadminshowcollections:systemus-erssystemversiondb.system.user,find):dbsystem,usersfindC;admimlou*userid*:BinDat

30、a4.,pF3pj?GeXQS-!-Dani2M8tT3Yw=rf)h;lou:credentSCRAM-SHA-17;ationCount*:10000fcsalt:.*oGtjIOdb.sli.izdciwnServer2019-09-22T11I2019-09-22T11RR0R_servershouldSocketrecv()近程主機強迫關(guān)閒了一?,F(xiàn)有的連按Socke-zException:remote:(KONE):0error:9001stryingreconnectto:27017()Failedtocannectto:270

31、17after5000:重啟MongoDB四為了驗證沒有授權(quán)不能査看相應(yīng)的集合。我們將庫切換至test庫,然后運行showcollections命令,結(jié)果例如以下。事實證明開啟了權(quán)限認證以后,則必須擁有授權(quán)才干訪問相應(yīng)庫的相應(yīng)集合。Irxul亠亠亠亠jr亠.j*j亠r-rfLuuxfxfsu.亠亠j,-p亠亠(shellhelp2):1:1usetestswitched7odbtestsbowcollections2019-09-22T14:10:54.1H6+0800EQUERYEthreadllError:bstCollectionsfailed:肘:0,errmsg:liotauthor

32、izedoiltesttoexecutecommand.1istCollect1ons:1.0匚(:13,codeName:Unauthorized/:r_getErrorWilhCodesrc/mongo/she11/u111s.js:25:13DB.prototype._getCollectionlnfosConomandsrc/mono/she11/db.js:807:1DB.prototype.getCollectionInfossrc/niongo/shell/db.js:819;19DB.prototype.getCollectionNamessrc/mongoshe11db.js:330:16shellHelper.showsrc/Kongo/shellyutils.j3:807:9sh

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論