一、索引

创建大量数据

for(i=0;i<100000;i++){

db.t1.insert({name:"test"+i,age:i})

}

数据查找性能分析

db.t1.find({name:"test10000"})

db.t1.find({name:"test10000"}).explain("executionStats")

建立索引

db.集合.ensureIndex({属性:1})

对索引属性查询

db.t1.find({name:"test10000"}).explain("executionStats")

索引的命令

建立唯一索引,实现唯一约束的功能

db.t1.ensureIndex({"name":1},{"unique":true})

联合索引,对多个属性建立一个索引,按照find()出现的顺序

db.t1.ensureIndex({name:1,age:1})

查看当前所有索引

db.t1.getIndexes()

删除索引

db.t1.dropIndexes("索引名称")

二、安全性

安全性流程:

1、创建超级管理员

2、修改配置文件,启用身份证验证

3、重启服务

4、使用超级管理员登录

5、创建普通用户

6、使用普通用户登录

use admin

db.createUser({

user:"admin",

pwd:"123",

roles:[{role:"root",db:"admin"}]

})

修改配置文件

sodu vi /etc/mongod.conf

去掉注释

security:

authorization:enabled

sudo service mongod restart    重启

mongo -u admin -p 123 --authenticationDatabase admin

创建普通用户:

db.createUser({

user:'t1',

pwd:'123',

roles:[{role:'readWrite',db:'test1'}]

})

mongo -u t1 -p 123 --authenticationDatabase test1

三、副职(副本集)

  • 复制至少需要两个节点A、B...
  • A是主节点,负责处理客户端请求
  • 其余的都是从节点,负责复制主节点上的数据
  • 节点常见的搭配方式为:一主一从、一主多从
  • 主节点记录在其上的所有操作,从节点定期轮询主节点获取这些操作,然后对自己的数据副本执行这些操作,从而保证从节点的数据与主节点一致
  • 主节点与从节点进行数据交互保障数据的一致性

mongo 索引 安全、备份与恢复的更多相关文章

  1. 【MongoDB学习之四】索引 聚合 备份与恢复 监控

    环境 MongoDB 4.0 CentOS 6.5_x64 一.索引语法ensureIndex()方法基本语法格式如下所示:>db.COLLECTION_NAME.ensureIndex({KE ...

  2. 使用Mongo索引需要注意的几个点

    1.正则表达式和取反运算符不适合建立索引 正则表达式:$regex 取反运算符:$ne ,$nin 2.backgroud建立索引速度缓慢 前台创建是会有阻塞,backgroud效率缓慢,实际情况实际 ...

  3. mongo: 索引

    索引创建 在学习索引之前,我们先看一下,如果没有添加索引时,我们用explain()函数,查看查询计划是什么样的. 发现使用的是BasicCursor,那么就代表我们没有索引,当我们查某一个数据的时候 ...

  4. mongo索引

    索引自动创建和手工创建 db.stu.drop(); db.stu.insert({"name":"张三","sex":"男&qu ...

  5. mongo索引命令

    http://blog.csdn.net/salmonellavaccine/article/details/53907535 1. 创建/重建索引 MongoDB全新创建索引使用ensureInde ...

  6. mongo 索引,速度

    (如有打扰,请忽略)阿里云ECS大羊群,2U4G低至1.4折,限实名新用户,需要的点吧https://promotion.aliyun.com/ntms/act/vm/aliyun-group/tea ...

  7. Mongo索引学习笔记

    索引使用场景 优:加快查询速度 劣:增删改会产生额外的开销.占用空间 tips: 返回集合中一半以上的数据,全表扫描的效率高 索引基础 基础操作 查看索引:db.test.getIndexes() 创 ...

  8. mongo索引(转)

    转自  :https://www.cnblogs.com/efforts-will-be-lucky/p/7324789.html 默认索引 对于每一个集合(除了capped集合),默认会在_id字段 ...

  9. Mongo Index

    摘要 mongo 的索引非常强大,和关系型数据库索引没什么区别.这里主要介绍本人在mongo索引上的犯的错. 索引种类 1.单字段索引 2.复合索引 多个字段索引 如{name:1,address:1 ...

随机推荐

  1. java-14习题

    .使用TreeSet集合生成一个不重复随机数组,该数组包含10个100以内的随机整数.输出该随机数组. import java.util.Iterator; import java.util.Tree ...

  2. Alisha’s Party (HDU5437)优先队列+模拟

    Alisha 举办聚会,会在一定朋友到达时打开门,并允许相应数量的朋友进入,带的礼物价值大的先进,最后一个人到达之后放外面的所有人进来.用优先队列模拟即可.需要定义朋友结构体,存储每个人的到达顺序以及 ...

  3. pycharm 01

    为了可以在pycharm中添加中文,应该在python文件第一行加入 # -*- coding: utf- -*-

  4. vue-----表单与组件

    <!DOCTYPE html><html><head> <meta charset="utf-8"> <meta name=& ...

  5. 7 种 join

    DROP TABLE IF EXISTS `test_student`; CREATE TABLE `test_student` ( `id` ) NOT NULL COMMENT '学号', `se ...

  6. 17. Debuggers (调试器 5个)

    反编译是安全研究的重要组成部分. 它将帮助您解剖Microsoft补丁,以发现他们无法告诉您的默认修复的错误,或更仔细地检查服务器二进制文件以确定为什么您的漏洞利用不起作用. 许多调试器都可用,但ID ...

  7. Spark:DataFrame 写入文本文件

    将DataFrame写成文件方法有很多最简单的将DataFrame转换成RDD,通过saveASTextFile进行保存但是这个方法存在一些局限性:1.将DataFrame转换成RDD或导致数据结构的 ...

  8. vue对象属性监听

    对象属性监听的两种方法: 1.普通的watch data() { return { frontPoints: 0 } }, watch: { frontPoints(newValue, oldValu ...

  9. 快速搞定Word,提高你的工作效率

    调整字体大小快捷键   ctrl+中括号  []分别减小字体加大字体 取消显示回车符号  文件->选项->显示->取消段落标记 对比两列内容是否相同    在第三列输入以下公式=IF ...

  10. MySQL Hardware--CentOS 6修改CPU性能模式

    cpufrequtils命令 ## 安装: yum install cpufrequtils ## 查看CPU信息: cpufreq-info -m 输出CPU信息为: analyzing CPU : ...