mysql 服务器中的容错

Sна*_*ƒаӽ 6 mysql replication

我已经构建了一个应用程序作为我的 UG 论文的一部分,该应用程序使用 mysql 数据库(社区版)。现在,我的教授要我为数据库提供容错功能(通过奇偶校验!!)!我争辩说我们不需要那个。反正我搜索,发现这里是MySQL有内置的复制引擎(一种机制来提供容错性,对吧?),与许多其他技术来提供可靠性等。但是我从那里学到的是,有一个主服务器和一些从服务器使用复制提供容错。现在我的问题是:

  • 如果我只有一台数据库服务器怎么办?mysql 对单个独立的数据库服务器是否有任何容错(即没有主从形成,没有集群?等)?

  • 我是否需要尝试为存储在 mysql 数据库中的数据提供任何类型的容错?

  • mysql服务器的社区版和企业版之间有什么样的区别(仅在容错方面)?

不知何故,我觉得我们不需要为 mysql db 提供容错做任何事情,它本身就很好。但我需要一些关于此事的可靠信息。


赏金编辑:

再次从上面的第二个问题:

  • 我是否需要尝试为存储在 mysql 数据库中的数据提供任何类型的容错

  • 尝试通过使用奇偶校验(每字节位)为 mysql 数据库提供容错的合理性是什么?

关于数据库中数据的一些细节:

具体的数据是大约 6500 个 Unicode 字符串的集合,大小小于 1 MB,是初始化数据,不会随时间变化。唯一的事务是从数据库中读取数据,不更新不删除。我的应用程序需要对这些字符串进行全文搜索,这是我使用 mysql 的唯一原因,因为它提供了全文搜索。我知道我可以通过使用诸如 elasticsearch 之类的东西来避免 mysql 的 FT 搜索。

Mic*_*een 4

可以让 DBMS 来处理故障检测和恢复(如果配置正确)。在应用程序中手动实现此类行为是最不寻常的。事实上,这就是软件堆栈的用途——从应用程序中删除那些常见且经常需要的功能,就像操作系统负责内存管理和线程调度一样。

也就是说,您可以向包含字符串的每个表添加另一列。它将保存字符串的哈希值。检索哈希值和字符串,重新计算,如果两个哈希值不同,则抛出错误。

鉴于这是一篇大学论文,除了有关实施的实用性之外,教授可能还试图传达一个学习点。你的长期利益可能是调查他的建议的可能实施方式,而不是列出他是白痴的原因。只是在说'。