ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
>[info] MongoDB 复制(副本集) MongoDB复制是将数据同步在多个服务器的过程。 复制提供了数据的冗余备份,并在多个服务器上存储数据副本,提高了数据的可用性, 并可以保证数据的安全性。复制还允许您从硬件故障和服务中断中恢复数据。 * 保障数据的安全性 * 数据高可用性 (24*7) * 灾难恢复 * 无需停机维护(如备份,重建索引,压缩) * 分布式读取数据 ***** #### **MongoDB复制原理:** mongodb的复制至少需要两个节点。其中一个是主节点,负责处理客户端请求,其余的都是从节点,负责复制主节点上的数据。 mongodb各个节点常见的搭配方式为:一主一从、一主多从。 主节点记录在其上的所有操作oplog,从节点定期轮询主节点获取这些操作,然后对自己的数据副本执行这些操作,从而保证从节点的数据与主节点一致。 ***** **客户端从主节点读取数据,在客户端写入数据到主节点时, 主节点与从节点进行数据交互保障数据的一致性。** ![](https://img.kancloud.cn/08/92/08922a8f037a6f13ff43d3f9818b70f7_786x523.png) #### **副本集特征:** * N 个节点的集群 * 任何节点可作为主节点 * 所有写入操作都在主节点上 * 自动故障转移 * 自动恢复 #### **MongoDB副本集设置:** **1. 启动一个名为rs0的MongoDB实例** ``` // 语法格式 mongod --port "PORT" --dbpath "YOUR_DB_DATA_PATH" --replSet "REPLICA_SET_INSTANCE_NAME" // 启动一个名为rs0的MongoDB实例,其端口号为27017 mongod --port 27017 --dbpath "D:\MongoDB\db" --replSet rs0 ``` >[info] 未完