MongoDB总结(二):mongoDB的索引、备份和恢复、固定集合及数据库安全
来源:互联网 发布:英超直播软件 编辑:程序博客网 时间:2024/04/27 17:31
1. MongoDB的索引
建立索引的目的是为了加速查询的。下面我们来查看一下在mongodb中常用的索引操作:
- 创建普通索引,使用命令 db.collection(例如:c1).ensureIndex({key:1})
- 创建唯一索引,使用命令 db.collection.ensureIndex({key:1},{unique:true})
- 查看关于索引的相关信息,使用命令 db.collection.stats()
- 查看查询使用索引的情况,使用命令 db.collection.find({key:value}).explain()
- 删除索引,使用命令 db.collection.dropIndex({key:1})
2. mongoDB的数据备份和恢复
mongoDB中的数据备份和恢复方法一
备份数据使用下面的命令:
mongodump -h dbhost -d dbname -o dbdirectory
-h:MongDB所在服务器地址,例如:127.0.0.1,当然也可以指定端口号:127.0.0.1:27017
-d:需要备份的数据库实例,例如:test
-o:备份的数据存放位置,例如:D:\data\dump,当然该目录需要提前建立,在备份完成后,系统自动在dump目录下建立一个test目录,这个目录里面存放该数据库实例的备份数据。
原因 : 如图所示:主要是因为在数据备份的时候不能在数据库操作环境下进行
解决办法:将环境切换到普通cmd 环境下进行数据备份即可
恢复数据使用下面的命令:
mongorestore -h dbhost -d dbname -directoryperdb dbdirectory
-h:MongoDB所在服务器地址
-d:需要恢复的数据库实例,例如:test,当然这个名称也可以和备份时候的不一样,比如test2
-directoryperdb:备份数据所在位置,例如:c:\data\dump\test
mongoDB中的数据备份和恢复方法二
导出数据可以使用命令:
mongoexport -h dbhost -d dbname -c collectionName -o output
参数说明:
-h 数据库地址
-d 指明使用的库
-c 指明要导出的集合
-o 指明要导出的文件名导入数据可以使用命令:
mongoimport -h dbhost -d dbname -c collectionname 文件的地址…
参数说明:
-h 数据库地址
-d 指明使用的库
-c 指明要导入的集合
3.固定集合(capped collection)
固定集合指的是事先创建而且大小固定的集合 。
固定集合特性:固定集合很像环形队列,如果空间不足,最早的文档就会被删除,为新的文档腾出空间。一般来说,固定集合适用于任何想要自动淘汰过期属性的场景,没有太多的操作限制。
创建固定集合使用命令:
db.createCollection(“collectionName”,{capped:true,size:100000,max:100});
size指定集合大小,单位为KB,max指定文档的数量
当指定文档数量上限时,必须同时指定大小。淘汰机制只有在容量还没有满时才会依据文档数量来工作。要是容量满了,淘汰机制会依据容量来工作。
备注:将普通集合转换为固定集合: db.runCommand({convertToCapped:collectionName”,size:10000,max:100});
4.安全和认证
每个MongoDB实例中的数据库都可以有许多用户。如果开启了安全性检查,则只有数据库认证用户才能执行读或者写操作。
在认证的上下文中,MongoDB会将普通的数据作为admin数据库处理。admin数据库中的用户被视为超级用户(即管理员)。
在admin数据库中创建管理员账号:
use admin;
db.addUser(“root”,”root”);
在test数据库中创建普通账号:
use test;
db.addUser(“shell”,”123”);
db.addUser(“hash”,”123”,true);
注意:用户shell,密码为123,对test数据库拥有读写权限
用户hash,密码为123,对test数据库拥有只读权限
重新启动数据库服务,并开启安全检查:
mongod –dbpath d:\mongo_data –auth
- MongoDB总结(二):mongoDB的索引、备份和恢复、固定集合及数据库安全
- mongodb数据库的备份和恢复
- MongoDB的数据库如何备份和恢复?
- MongoDB的数据库如何备份和恢复?
- MongoDB的数据库如何备份和恢复?
- MongoDB:mongodb的备份和恢复
- mongodb数据库(二) 数据库备份与恢复
- MONGODB的备份和恢复
- mongoDB的备份和恢复
- mongoDB备份恢复数据库
- MongoDB索引与固定集合
- mongodb备份和恢复
- 备份和恢复MongoDB
- mongoDB备份和恢复
- MongoDB 数据库操作(八)-数据备份和恢复
- mongodb数据库的备份与恢复!
- MongoDB数据库的备份与恢复详解
- mongodb数据库的备份与恢复
- app 启动原理
- php中$_request与$_post、$_get的区别
- 1014
- android系统目录说明
- cmds纪录
- MongoDB总结(二):mongoDB的索引、备份和恢复、固定集合及数据库安全
- 消息中间件主备方案选型实践
- 南方姑娘
- Linux 环境变量 PATH 的默认值
- 58. Length of Last Word
- Mybaits配置文件生成工具
- Listener监听器
- LeetCode_8_myAtio_String to Integer
- Android-ViewPager滑动图片