MySQL 是设计上的分布式数据库吗

Is MySQL a Distributed Database by Design

MySQL 是一个数据库,(1) 可以通过增加副本数量来配置 (2) 而不会失去在任何地方更新和在任何地方保持同步的能力。

换句话说,MySQL 是按设计 分布的 还是它存在于一台机器上,如果我想水平扩展,我将不得不做像实现 sharding/consistent 散列这样的手工工作吗?

根据使用 MySQL Cluster CGE 的 MySQL 文档,

MySQL 可以用作分布式数据库。这提供了自动分区和可伸缩性。它还提供分布式查询引擎。

话虽如此,您仍然需要做一些工作才能正确设置它。据我所知,没有数据库可以神奇地知道您希望如何最佳地分布数据。即使是从头开始设计用于分布式的数据库也需要一些手动工作才能以最佳方式工作

Is MySQL a Distributed Database by Design

没有。 MySQL 是一个集中式 数据库。

Is MySQL a database that (1) can be configured via increasing the number of replicas (2) without losing the ability to be updated anywhere and stay in sync everywhere.

也没有。 MySQL 复制通常依赖于主从架构。在这个架构下,所有的写都必须通过(单)master来申请,所以没有"ability to be updated everywhere"。多主架构是可能的,但仅限于有限的规模,即使如此也只有重要的警告。