mongodb介绍
# mongodb介绍
MongoDB 是由 C++语言编写一个基于分布式文件存储的开源 NoSQL 数据库系统。在高负载的情况下,可添加更多的节点,以保证服务性能。在许多场景下用于代替传统的关系型数据库或键/值存储方式。旨在为 Web 应用提供可扩展的高性能数据存储解决方案。
MongoDB 提供了一个面向文档存储,操作起来比较简单和容易,可以存储比较复杂的数据类型。最大的特点是支持的查询语言非常强大,语法优点类似于面向对象的查询语言。几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。是一个面向集合的,模式自由的文档型数据库。
# mongodb数据备份与导入
1 、数据备份方法
- 导入 :mongoimport
- 导出 :mongoexport
备份:
- 逻辑备份:mongodump
- 物理备份:冷备
- 恢复:mongorestore
2 、 复制数据库
复制本地数据库:db.copyDatabase(“from_db”,”to_db”,”locolhost”)
复制远程数据库:db.copyDatabase(“from_db”,”to_db”,”192.168.200.101”)
克隆集合:db.runCommand({cloneCollection:”accp.t1”,from:”192.168.200.101”})
# Built-In Roles (内置角色):
- 数据库用户角色:read 、readWrite
- 数据库管理角色:dbAdmin 、dbOwner 、userAdmin
- 集群管理角色:clusterAdmin 、clusterManager 、clusterMonitor 、hostManager
- 备份恢复角色:backup 、restore
- 所有数据库角色:readAnyDatabase 、readWriteAnyDatabase 、userAdminAnyDatabase、dbAdminAnyDatabase
- 超级用户角色:root
- 内部角色:__system
# mongodb 复制 及复制集简介
复制:
将一个数据库实例中的所有数据库改变复制到另一个独立的数据库实例汇总,是主从复制集群(未来不再使用)。缺点是一旦主库出现故障,需要手动吧主库切换到最可靠的从库,而其他从库就得从新的主库去同步。
复制集(replSet ,副本集):
原理上也是主从复制,但主库出现故障时,能自动主从切换,从而故障得以恢复,其他从库从新的主库同步数据,整个过程不需要手动干预。简而言之,复制集就是主从自动切换的复制。
复制集(副本集)应用
- 备份
- 故障转移
- 读扩展
- 离线数据分析等
上次更新: 2022/06/12, 15:48:09