開啓mongo的姿式:web
cd /usr/local/mongo/bin(mongo的文件目錄的bin目錄下)正則表達式
sudo ./mongod (開啓mongo服務)數據庫
再新開一個終端json
cd /usr/local/mongo/bin數組
sudo ./mongo (進入mongo數據庫)服務器
數據庫操做:app
use 數據庫名字 使用/建立數據庫less
show dbs 查看全部的數據庫spa
db.dropDatabase() 刪除當前的數據庫rest
db 查看當前數據庫
集合操做:
數據操做:
db.集合名.insert() db.user.insert({"name":"UZI", "age": "18" })
db.集合名.save() db.user.save()
db.集合名.update(<query> ,<update>,{multi: <boolean>})
參數query:查詢條件
參數update:更新操做符
參數multi:可選, 默認是false,表示只更新找到的第⼀條記錄, 值爲true表示把滿⾜條件的⽂檔所有更新
db.user.update({"name":"UZI"},{"name":"MLXG"}) 將整個數據改成第二個{}裏的內容 db.user.update({"name":"UZI"},{$set:{"name":"hys"}}) 將數據中的某個字段改成想改的值 db.user.update({},{$set:{gender:0}},{multi:true}) 將數據中的對應的值更改
db.集合名.remove(<query>,{justOne: <boolean>})
參數query:可選,刪除的⽂檔的條件
參數justOne:可選, 若是設爲true或1, 則只刪除⼀條, 默認false, 表示刪除多條
db.user.remove({"name": "UZI"}, {justOne: <boolean>})
⽅法find(): 查詢
db.集合名稱.find({條件⽂檔})
⽅法findOne():查詢,只返回第⼀個
db.集合名稱.findOne({條件⽂檔})
⽅法pretty(): 將結果格式化
db.集合名稱.find({條件⽂檔}).pretty()
比較查詢
$lt (less than)
$lte (less than equal)
$gt (greater than)
$gte
不等於:$ne
db.stu.find({ age:{ $gte:18 } }) 查詢年齡大於等於十八的
db.stu.find({ time:{ $gte: ISODate("2018-05-11T13:58:51.122Z") } }) 時間大於條件的結果
db.stu.find({ age:{ $gte:18 }, name:UZI })
db.stu.find({ $or:[{age: { $gte:18 } }, { gender: true } ], name:UZI }) 查詢年齡大於18或者性別爲男,而且姓名爲UZI的
使⽤$in
, $nin
判斷數據是否在某個數組內
db.stu.find({ age : { $in: [10,20,30] } }) 查詢年齡爲10,20,30的結果
db.stu.find( {name: /^andy/ } ) 查詢姓名以andy開始的
db.stu.find( { name: {$regex: '768$' } } ) 查詢姓名以768結尾的
db.stu.find().skip(10) 跳過前十條查詢結果
db.stu.find().limit(10) 查詢十條結果
db.stu.find().skip(10).limit(10) 和 db.stu.find().limit(10).skip(10) 查詢結果相同 先跳過前十條,在查詢十條
在查詢到的返回結果中, 只選擇必要的字段,參數爲字段與值, 值爲1表示顯示, 值爲0不顯 特別注意: 對於_id列默認是顯示的, 若是不顯示須要明確設置爲0
db.stu.find( { }, {name:1,age:1 }) 查詢結果只顯示name和age字段
db.stu.find().sort({ gender:1, age:-1 })
db.stu.find().count() 統計結果的次數
db.stu.count() 統計結果的次數
db.stu.distinct("hometown", {age:{$gte:18} }) 對年齡大於18的結果以hometown去重
關閉mango的正確姿式:
use admin
db.shutdownServer()
mongo備份語法:mongodump -h dbhost -d dbname -o dbdirectory
實例:mongodump -h 192.168.196.128:27017 -d test1 -o ~/Desktop/test1bak
mongo恢復語法:mongorestore -h dbhost -d dbname --dir dbdirectory
實例:mongorestore -h 92.168.196.128:27017 -d test2 --dir ~/Desktop/test1bak/test1
mongoDB的導入和導出
導出語法: mongoexport -h dbhost -d dbname -c colname -o filename --type json/csv -f field
-h
: 服務器地址-d
: 數據庫名-c
: 集合名-o
: 導出文件名--type
: 文件類型,默認json格式,可選數據類型json,csv-f
: 須要導出的字段,導出爲json格式的數據時能夠不指定導出哪些字段,默認所有,導出成csv文件是必須指定 示例:mongoexport -h 192.168.196.128:27017 -d test2 -c col1 -o test1_col1 [--type csv -f name,age,number]
導出語法: mongoimport -d dbname -c colname --file filename [--headerline --type json/csv -f field]
-h
: 服務器地址-d
: 數據庫名-c
: 集合名-o
: 導出文件名--type
: 文件類型,默認json格式,可選數據類型json,csv-f
: 須要導出的字段,導出爲json格式的數據時能夠不指定導出哪些字段,默認所有,導出成csv文件是必須指定 示例:mongoexport -h 192.168.196.128:27017 -d test2 -c col1 -o test1_col1 --type csv -f name,age,number