1. 程式人生 > >mongo基本操作

mongo基本操作

base etime gte pro .so 刪除記錄 dmi ide last

一.MongoDB 數據 查詢

1.按條件查詢記錄:db.getCollection(‘表名‘).find({‘字段名‘ : 字段值})

例如:db.getCollection(‘Ymt_Social‘).find({‘UserId‘ : 1000357715})

2.按條件查詢記錄數量:db.getCollection(‘表名‘).find({‘字段名‘ : 字段值}).count()

例如:db.getCollection(‘Ymt_Social‘).find({‘UserId‘ : 1000357715}).count()

3.按照模糊條件查詢記錄數量:db.getCollection(‘表名‘).find({‘字段名‘ : { ‘$regex‘ : ‘前部分內容.*‘ }}).count()

例如:db.getCollection(‘Ymt_Social‘).find({‘Content‘ : { ‘$regex‘ : ‘sososo good very beautiful.*‘ }}).count()

4.查詢所有記錄數量:db.getCollection(‘表名‘).find({}).count()

5.排重查詢 db.getCollection(‘表名‘).distinct("字段名")

6.對查詢結果排序 db.getCollection(‘TaskItem‘).find({}).sort({CreateTime:-1}) -1 降序,1 升序

7. 查詢操作符
比較操作符"$gt
" 、"$gte"、 "$lt"、 "$lte"、‘‘$ne‘‘(分別對應">"、 ">=" 、"<" 、"<="、‘‘!=‘‘),組合起來進行範圍的查找
示例:db.getCollection(‘ProductBasicInfo‘).find({"ValidEnd":{"$gt":new Date()}})

二.MongoDB 數據導出mongoexport

1.概述

mongoexport命令行用於數據的導出,默認導出的文件格式為JSON格式。當然也可以指定特定的文件格式。

2.語法

說明:

-h:數據庫宿主機的IP

-u:數據庫用戶名

-p:數據庫密碼

-d:數據庫名字

-c:集合的名字

-f:導出的列名

-q:導出數據的過濾條件

--csv:導出格式為csv

3.按字段導出數據步驟:

->首先要安裝mongo的服務端

->然後在PC的運行中輸入cmd

->進入mongo的安裝文件路徑下C:\Program Files\MongoDB\Server\3.0\bin

->運行命令 mongoexport -h localhost:27001 -d庫名 -c 表名 -f 字段名1,字段名2 --csv -o 路徑/a.csv

例如:mongoexport -h 172.16.101.86 -d YmatouSocial -c Ymt_Social -f NoteId,UserId,AddTime --csv -o E:\LOADrunner\C2C社區\output7.csv

4.按特定字段值導出數據語句:

例如:mongoexport -h 172.16.101.86 --port 27017 -d YmatouSocial -c Ymt_Social -q "{Content:{$regex:‘sososo good very beautiful.*‘}}" --type=csv -f NoteId,UserId -o test.dat

mongoexport -h 172.16.101.86 --port 27017 -d YmatouSocial -c Ymt_Social -q "{“Status”:0}" --type=csv -f NoteId,UserId -o test.dat

導出uid和token

mongoexport -h set1b.mongodb.ymatou.com --port 27017 -u authuser -p 123456 -d Ymt_Auth_Token -c UserToken --type=csv -f sId,uId -o test.dat

導出登入密碼是123456的uid和loginid

mongoexport -h set1b.mongodb.ymatou.com --port 27017 -u authuser -p 123456 -d Ymt_Auth_201406 -c ULC_201406 -q "{‘lPas‘:‘F47C010581713BD523BE9B43677C4872‘}" --type=csv -f uId,lBills.LoginId -o test.dat

5:按特定字段值導出數據(限制條數)語句

例如:mongoexport -h 172.16.101.86 --port 27017 -d YmatouSocial -c Ymt_Social --limit 1 --type=csv -f NoteId,UserId -o test.dat

--mongoexport -h 172.16.101.86 --port 27017 -d YmatouSocial -c Ymt_Social --limit 1 --type=csv -f NoteId,UserId -o test.dat

mongoexport -h 172.16.103.213 --port 27017 -u authuser -p 123456 -d Ymt_Auth_Token -c UserToken --limit 1 --type=csv -f sId,uId -o E:\ymt性能測試腳本\Token.csv

三.MongoDB 刪除記錄——linux命令

1.刪除數據庫數據步驟:

->登陸linux

->輸入mongo

->輸入show dbs

->輸入use 數據庫

->輸入show tables

->輸入命令:db.Ymt_Social.remove({‘Content‘ : { ‘$regex‘ : ‘baby control the city ok.*‘ }})

四.循環插入數據demo

for (var i = 90000000; i <= 90000010; i++) db.getCollection(‘UserToken_App‘).save({"_id" : "3e30000132514a4b99e4434"+i,"tId" : "635f05c1469b408d9909880"+i,"sId" : "6B1BBEEE32367DA2B8232B9EC3509C1705EDBB454C007722A257A7C33D0148E9BD723C0EEA9412210499EDA5FB269F09DA54EBBBAFB4AC45","uId" : "9"+i,"eTtime" : ISODate("2015-03-19T04:37:19.983Z"),"cTime" :new Date(),"tSource" : "matouapp","tContext" : "reg"});

for (var i = 0; i <= 255; i++)for (var j = 0; j <= 255; j++) db.getCollection(‘YmatouBlacklist_Ip‘).save({"_id" : "173.14."+i+"."+j,"CreateTime" : new Date(),"LastUpdateTime" : new Date(),"ExpiredTime" : new Date(),"AllowRequest" : false});

五.json格式查詢mongo服務狀態

mongostat -h 172.16.101.87 --discover --json

六.killop

var mo=db.currentOP().inprog[0];db.killOP(mo.opid)

指定某個值的數據類型

db.addressBook.insertMany(
   [
      { "_id" : 1, address : "2030 Martian Way", zipCode : "90698345" },
      { "_id" : 2, address: "156 Lunar Place", zipCode : 43339374 },
      { "_id" : 3, address : "2324 Pluto Place", zipCode: NumberLong(3921412) },
      { "_id" : 4, address : "55 Saturn Ring" , zipCode : NumberInt(88602117) }
   ]
)

mongo 服務器 set5a.mongodb.ymatou.com(172.16.101.89),set5b.mongodb.ymatou.com(172.16.101.90)

用戶名:root / [email protected]

執行 mongostat 命令需要切換到 sa/123456 這個用戶

mongostat -usa --authenticationDatabase admin

mongo遷庫:

首先登入主庫,然後執行從目標機copy

db.copyDatabase("Ymt_Auth_201406","Ymt_Auth_201406","172.16.101.161:27017","authuser","123456","MONGODB-CR")
然後創建賬號
use Ymt_Auth_201406
db.createUser( { "user" : "authuser","pwd":"123456","roles":[{role:"readWrite",db:"Ymt_Auth_201406"}]},{ w: "majority" , wtimeout: 5000 } )

mongo基本操作