如果mongodb ,三个节点集群,两个节点挂了,数据文件损坏,能不能通过单节点恢复数据?

如果mongodb ,三个节点集群,两个节点挂了,数据文件损坏,能不能通过单节点恢复数据?

参与12

3同行回答

liucj2004liucj2004其它undefined
to岳彩波:三个节点的集群,一般默认是指副本集的集群。与shard无关to题主:三个节点的集群,2个节点挂了数据文件损坏。首先你可以以单节点模式启动那个正常的节点,来恢复业务。但是这个方法不太好。最好的方法是这样(假设另外两个节点数据文件损坏),先在存活节点上加一个仲裁节点(就...显示全部

to岳彩波:三个节点的集群,一般默认是指副本集的集群。与shard无关

to题主:三个节点的集群,2个节点挂了数据文件损坏。首先你可以以单节点模式启动那个正常的节点,来恢复业务。但是这个方法不太好。
最好的方法是这样(假设另外两个节点数据文件损坏),先在存活节点上加一个仲裁节点(就在本机即可,不保存数据),然后把两个坏的节点踢掉,保证不破坏副本集的情况下,让业务可用。然后再在坏的节点上,删除dbpath目录,重新加入集群,会自动初始化并同步数据的。当3台都恢复后,再踢出仲裁节点即可。

收起
农业其它 · 2017-07-27
浏览2828
y18511664518y18511664518技术总监长城超云
首先要明白mongodb如果你是一个三节点集群,那你应该明白这几个节点都是干什么的, MongoDB集群包括一定数量的mongod(分片存储数据)、mongos(路由处理)、config server(配置节点)、clients(客户端)、arbiter(仲裁节点:为了选举某个分片存储数据节点那台为主节点)。看一下mongodb集群的...显示全部

首先要明白mongodb如果你是一个三节点集群,那你应该明白这几个节点都是干什么的, MongoDB集群包括一定数量的mongod(分片存储数据)、mongos(路由处理)、config server(配置节点)、clients(客户端)、arbiter(仲裁节点:为了选举某个分片存储数据节点那台为主节点)。看一下mongodb集群的实现方式,逻辑层次是不可能恢复的。

收起
金融其它 · 2017-07-27
浏览2924
宇山宇山其它失业中。。。
可以的,试试显示全部

可以的,试试

收起
互联网服务 · 2017-07-27
浏览2847

提问者

gossipyboy
系统架构师某城市商业银行
擅长领域: 大数据服务器分布式系统

问题来自

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2017-07-27
  • 关注会员:4 人
  • 问题浏览:5836
  • 最近回答:2017-07-27
  • X社区推广