mongo的基本操作

mongodb密码和传统数据如mysql等有些区别: mongodb的用户名和密码是基于特定数据库的,而不是基于整个系统的。所有所有数据库db都需要设置密码。

1: 数据库的创建,用户创建和删除,用户权限的分配
1.1 查看所有数据库
show dbs

1.2 创建admin数据库(如果数据库,存在则只是切换到当前的数据库下)
use admin

1.3 创建管理员账户
db.createUser({user: "root",pwd: "Gmg_2020", roles: [ { role: "root", db: "admin" } ]})

1.4 账号
db.auth("root","Gmg_2020")
注意:这里一般情况只能授权一次。如果需要使用其他用户授权的话,需要先退出mongo,然后在进入后,重新用新账号授权。否则会出现:mongodb too many users are authenticated

1.5 创建自定义数据库(新数据库名:warehouse),并创建用户(用户名:cnc, 密码:Gmg_2020)
use warehouse
db.createUser({user:"cnc", pwd:"Gmg_2020",roles:[{role:"dbOwner",db:"mydb"}]})

1.6 删除用户
删除单个用户
db.system.users.remove({user:"mongo"})
删除所有用户
db.system.users.remove({})

其他数据相关命令:
show dbs#查看当前用户可见的所有数据库
show users #显示当前数据库下的用户信息;
use DataBaseName #切换/创建数据库
db.stats() #显示当前数据库状态 
db.DropDatabase() #删除当前使用数据库 
db.getName() #查看当前使用的数据库 
db.version() #当前MongoDB版本 
db.getMongo() #查看当前db的链接机器地址 


2. Collection聚集集合
2.1 创建一个聚集集合(table)
db.createCollection("collection_name");

2.2 得到指定名称的聚集集合(table)
db.getCollection("collection_name");

2.3 得到当前db的所有聚集集合(所有的table)
db.getCollectionNames();

2.4 显示当前db所有聚集索引的状态
db.printCollectionStats();

3. mongdb的查询操作(数据库名:mydb)
3.1 插入操作
db.mydb.insert({"username":"aaaa", "password":"bbb"})

3.2 普通查找数据库
db.mydb.find()
db.mydb.find({})

3.3 json格式查找数据库
db.mydb.find().pretty()

3.4 更新数据库
更新对象(会删除其他对象的):
db.mydb.update({"name":"xiaoming"},{"name":"beijing"})

3.5 更新对象的字段:
db.mydb.update({"name":"daming"},{$set:{"age":30}})

3.6 查询去掉后的当前聚集集合中的某列的重复数据
db.TableName.distinct("columnName") 

3.7 查询
db.TableName.find({age: {$gt: 18}})  查询(条件查询age > 18的记录)
db.TableName.find({name: /Infi/})  模糊查询name中包含Infi的数据 
db.TableName.find({name: /^infi/}) 查询name中以in开头的数据
db.TableName.find().sort({age: 1}); 按照年龄排序(升序为1,降序为-1) 
db.TableName.find().limit(2) 查询前2条数据 
db.TableName.find().skip(1) 查询第1条以后的数据 
db.TableName.find({name:"daming"}).count() 查询某个结果集的记录条数 

3.8 删除数据
a.删除所有数据
db.mydb.remove();

b.按照条件删除
db.mydb.remove({"22":"女"});

c.删除几条
db.mydb.remove({"name":"张无忌"},2);


4. 开启服务
开机启动    systemctl enable mongodb.service 
启动服务    systemctl start mongodb.service    
关闭服务    systemctl stop mongodb.service  

5. 远程连接
mongo 47.106.231.60:27017/admin -uroot -pxxx
mongo 47.106.231.60:27017/warehouse-uroot -pxxx

3. 备份和还原数据库
3.1 备份库task
./mongodump -uroot -pxxx -h 47.106.231.60:27017 -d task -o /root/task-db/

3.2 还原库task(这里的路径需要主义,多了一层)
./mongorestore -uroot -pxxx -h 47.106.231.70:27017 -d task --dir /root/task-db/task

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值