Documentation Home
MySQL 8.3 Reference Manual
Related Documentation Download this Manual
PDF (US Ltr) - 40.8Mb
PDF (A4) - 40.9Mb
Man Pages (TGZ) - 294.0Kb
Man Pages (Zip) - 409.0Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb
Excerpts from this Manual

20.1.4.3 容错能力

MySQL 组复制基于 Paxos 分布式算法的实现,以提供服务器之间的分布式协调。因此,它需要大多数服务器处于活动状态以达到仲裁并因此做出决定。这直接影响了系统可以容忍的故障数量而不影响其整体功能。需要的服务器数量(n)来容忍 f 故障是 n = 2 x f + 1

在实践中,这意味着要容忍一个故障,组必须至少有三个服务器。如果一个服务器故障,还有两个服务器可以形成多数(两个中的两个),允许系统继续自动做出决定并继续进行。但是,如果第二个服务器故障 非自愿,那么组(剩下一个服务器)将阻塞,因为没有多数来做出决定。

以下是一个小表,说明了上面的公式。

组大小

多数

瞬时故障容忍

1

1

0

2

2

0

3

2

1

4

3

1

5

3

2

6

4

2

7

4

3