博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MongoDB数据库 : 管道,用户管理,副本集等
阅读量:5937 次
发布时间:2019-06-19

本文共 1451 字,大约阅读时间需要 4 分钟。

聚合(aggregate): db.集合.aggregate([{管道:{表达式}}])

db.集合.aggregate([

{管道1:{表达式1}},
{管道2:{表达式2}},
... ...
])

管道1的结果作为管道2的输入.

$group:分组 {$group:{

_id:'$gender',
count:{$sum:1}
}}

$match:过滤(年龄大于19) {$match:{age:{$gt:19}}}

$project:投影(和find第二组参数一样,1显示,0不显示) {$project:{_id:0,counter:1}}

$sort:排序(和sort一样,1升序,-1降序) {$sort:{_id:-1}}

$skip(跳过多少条文档,和skip一样) {$skip:2}

$limit(获取多少条文档,和limit一样) {$limit:2}

$unwind(可以把数组拆分成单条文档) {$unwind:'$xxx'}

索引(1:升序索引,2:降序索引):db.集合.ensureIndex({属性1:1,属性2:1})

查看文档索引 db.集合.getIndex()

删除索引 db.集合.dropIndex('索引名称')

角色: root 只在admin数据库可用,超级账号

Read:允许用户读取指定数据库
readWrite:允许用户读写指定数据库

创建超级管理员:

db.createUser({user:'admin',pwd:'123',roles:[{role:'root',db:'admin'}]})

启用验证 修改/etc/mongodb.conf:

security:

authorization: enabled

或者 auth=true

用超级管理员创建普通用户:

db.createUser({user:'user1',pwd:'123',roles:[{role:'readWrite',db:'students'}]})

登陆: mongo -u user1 -p 123 --authenticationDatabase students

副本集:数据备份等:

mongod --bind_ip x.x.x.x --porx 27018 --dbpath ~/Desktop/t1 --replSet rs0
mongod --bind_ip x.x.x.x --porx 27019 --dbpath ~/Desktop/t2 --replSet rs0

连接 mongo --host x.x.x.x --port 27018

初始化主服务器: >rs.initiate() 查看状态 rs.status()

添加副本集: rs.add('x.x.x.x:27019')')

删除副本集:rs.remove('x.x.x.x:27019')')

在从服务器中读取操作需要设置 rs.slaveOk()

自动主从切换:一个服务器关闭另一个自动切换成主服务器.

数据库备份:mongodump -u user1 -p 123 --authenticationDatabase 数据库名 -d 备份数据库 -o 存放位置

数据库恢复: mongorestore -h 服务器地址 -d 需要恢复的数据库 --dir 备份数据库位置

转载于:https://www.cnblogs.com/cccy0/p/9158937.html

你可能感兴趣的文章
正阳门下
查看>>
【01】Python:故事从这里开始
查看>>
理解Underscore中的_.bind函数
查看>>
关于目标检测 Object detection
查看>>
vue-cli 3.0 axios 跨域请求代理配置及生产环境 baseUrl 配置
查看>>
Morris Traversal
查看>>
随机数的扩展--等概率随机函数的实现
查看>>
UVA-10347 Medians 计算几何 中线定理
查看>>
eclipse中怎么删除重复的console
查看>>
软件工程(2019)结对编程第二次作业
查看>>
平安人寿保险-深圳Java开发工程师社招面试
查看>>
编辑距离问题
查看>>
Python_练习题_49
查看>>
第二周项目2-长方柱类
查看>>
Ibatis.net + Npgsql +PostgreSql 多线程“Timeout while getting a connection from pool.”
查看>>
Node.js权威指南 (14) - 使用Express构建Web应用程序
查看>>
Java EE (1) -- Java EE 6 Web Component Developer Certified Expert(1z0-899)
查看>>
linux--svn checkout
查看>>
Java异常
查看>>
洗礼灵魂,修炼python(30)--装饰器(2)—>装饰器总结+进阶使用
查看>>