安裝路徑不要有中文<辈ā滩援!
打開數(shù)據(jù)庫后
輸入mongo
顯示如下內(nèi)容開啟成功
MongoDB shell version v4.4.0
connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("e0940a21-e1f1-40e5-acb9-b90e12927ca9") }
MongoDB server version: 4.4.0
輸入show dbs
admin 0.000GB//自帶數(shù)據(jù)庫
config 0.000GB//自帶數(shù)據(jù)庫
devops 0.000GB //自己建的數(shù)據(jù)庫
local 0.000GB//自帶數(shù)據(jù)庫
1.使用數(shù)據(jù)庫、創(chuàng)建數(shù)據(jù)庫
use tryone
想創(chuàng)建成功一個(gè)數(shù)據(jù)庫必須插入一個(gè)數(shù)據(jù)
在數(shù)據(jù)庫的表中插入數(shù)據(jù)前先使用use wenera 切換到這個(gè)庫
數(shù)據(jù)庫的子集就是表(集合)
show collections
查看有哪些集合使用
user表中的數(shù)據(jù)
{ "_id" : ObjectId("5f7fc6b0dd43753f909da25c"), "name" : "小新", "age" : 30 }
{ "_id" : ObjectId("5f7fd0f1dd43753f909da25f"), "name" : "xiaowang", "age" : 23 }
{ "_id" : ObjectId("5f7fd102dd43753f909da260"), "name" : "xiaoer", "age" : 13 }
{ "_id" : ObjectId("5f8023e7dd43753f909da261"), "name" : "xiaohu", "age" : 21 }
{ "_id" : ObjectId("5f8023fadd43753f909da262"), "name" : "xiaobai", "age" : 22 }
user是表的名字
db.user.insert({"name":"xiaoxin","age":30})
在wenera
庫中建立user表插入一條數(shù)據(jù)
db.dropDatabase()
刪除數(shù)據(jù)庫前先切換到這個(gè)數(shù)據(jù)庫
db.user.find()
查看表里所有數(shù)據(jù)
db.user.find({age:{$gt:22}})
表中age>22的記錄
db.user.find({age:{$gte:22}})
表中age>=22的記錄
db.user.find({age:{$lt:22}})
表中age<22的記錄
db.user.find({age:{$lte:22}})
表中age<=22的記錄
db.user.find({age:{$gte:13,$lte:26}})
查詢age>=13且<=26
db.user.find({name:/lala/})
查詢name中包含lala
的數(shù)據(jù),數(shù)據(jù)量比較小的時(shí)候盏触,搜索場(chǎng)景可以使用
db.user.find({name:/^l/})
查詢name中包含以l
開頭的數(shù)據(jù)
db.user.find({name:/n$/})
查詢name中包含以n
結(jié)尾的數(shù)據(jù)
db.user.find({name:/lala/},{age:1})
查詢結(jié)果只顯示age這列
db.user.find({name:/r$/},{age:1,name:1})
查詢結(jié)果只顯示age,name這2列
db.user.find().sort({age:1})
升序
db.user.find().sort({age:-1})
降序
db.user.find(name:'zhangsan',age:22)
降序
db.user.find().limit(2)
前兩個(gè)數(shù)據(jù)
db.user.find().skip(2)
從2條以后的數(shù)據(jù)開始查
db.user.find().limit(16),skip(8)
一頁8條數(shù)據(jù),查詢第三頁的數(shù)據(jù)
db.user.find({$or:[{age:13},{name:"xiaowang"}]})
查詢age:13和name:"xiaowang"的數(shù)據(jù)
db.user.find({$or:[{name:"xiaoxin"},{name:"xiaowang"}]})
查詢name:"xiaoxin"和name:"xiaowang"的數(shù)據(jù)
db.user.find().limit(1)
查詢第一條數(shù)據(jù)
db.user.find({age:{$gt:20}}).count()
統(tǒng)計(jì)age大于20的數(shù)據(jù)
2.修改數(shù)據(jù)
{ "_id" : ObjectId("5f7fc6b0dd43753f909da25c"), "name" : "xiaoxin", "age" : 30 }把"name" : "xiaoxin"改為"name" : "小新"
user是表的名字
db.user.update({"name":"xiaoxin"},{$set:{"name":"小新"}})
> db.user.find()
{ "_id" : ObjectId("5f7fc6b0dd43753f909da25c"), "name" : "小新", "age" : 30 }
{ "_id" : ObjectId("5f7fce4edd43753f909da25e"), "name" : "xiaohong", "age" : 23 }
{ "_id" : ObjectId("5f7fd0f1dd43753f909da25f"), "name" : "xiaowang", "age" : 23 }
{ "_id" : ObjectId("5f7fd102dd43753f909da260"), "name" : "xiaoer", "age" : 13 }
其中的條件可以是多個(gè),更換的部分也可以是多個(gè)耻陕,不寫$set默認(rèn)為替換數(shù)據(jù)
db.user.update({"age":13},{$set:{"sex":"男"}},{multi:true})
集體更改
db.user.remove({"name":"xiaohong"}) 刪除單個(gè)拙徽,不寫參數(shù)整張表都會(huì)被刪掉
db.user.remove({"name":{$gt:30}}) 年紀(jì)大于30的刪除
3.配置超級(jí)管理權(quán)限
db.createUser({
user:'wener',
pwd:'123',
roles:[{role:'root',db:'admin'}]
})
show users
查看用戶
mongod.cfg文件中# 符號(hào)指注釋這個(gè)命令
mongo admin -u wener -p 123
進(jìn)入所有庫
db.dropUser('管理員名字')
刪除管理員
db.updateUser("用戶名",{pwd:"密碼"})
更新密碼
db.auth("admin","password");
使用場(chǎng)景
mongo wener
use admin
db.auth("wener","123")
在配置用戶后使用MongoDB Compass
出現(xiàn)An error occurred while loading navigation: command hostInfo requires authentication
點(diǎn)擊以下紅框部分進(jìn)行配置