10bet网址
MySQL 5.6参考手册
相关文件10bet官方网站 下载本手册 从本手册中摘录

18.1 NDB集群概述

NDB集群是一种在无共享系统中支持内存中数据库集群的技术。无共享的体系结构使系统能够使用非常便宜的硬件,并且对硬件或软件的特定需求最少。

NDB集群设计不具有任何单点故障。在共享无线系统中,每个组件都有预期拥有自己的内存和磁盘,并且不建议或支持使用相同的存储机制,如网络共享,网络文件系统和SAN。

NDB群集将标准MySQL Server与名为内存中的集群存储引擎集成NDB(代表N.etworkD.ataB.ASE.)。在我们的文档中10bet官方网站,这个术语NDB是指特定于存储引擎的设置的一部分,但是MySQL NDB集群指一个或多个MySQL服务器的组合NDB存储引擎。

NDB群集由一组计算机组成,称为主持人,每个进程运行一个或多个进程。这些过程被称为节点,可以包括MySQL服务器(用于访问NDB数据),数据节点(用于存储数据),一个或多个管理服务器,以及可能的其他专用数据访问程序。这里显示了NDB集群中这些组件的关系:

图18.1 NDB集群组件

在此群集中,三个MySQL服务器(MySQLD程序)是SQL节点,可提供存储数据的四个数据节点(NDBD程序)。SQL节点和数据节点位于NDB管理服务器(NDB_MGMD程序)的控制下。各种客户端和API可以与SQL节点相互作用 -  MySQL客户端,MySQL C API,PHP,Connector / J和连接器/网络。也可以使用NDB API创建自定义客户端以与数据节点或NDB管理服务器进行交互。NDB管理客户端(NDB_MGM程序)与NDB管理服务器交互。

所有这些程序一起工作形成一个NDB集群(参见第18.4节“NDB集群计划”。当数据存储数据时NDB存储引擎,表(和表数据)存储在数据节点中。这些表可从群集中的所有其他MySQL服务器(SQL节点)直接访问。因此,在存储在群集中的数据的工资单应用程序中,如果一个应用程序更新员工的薪资,则查询此数据的所有其他MySQL服务器可以立即看到此更改。

尽管NDB Cluster SQL节点使用mysqld服务器守护程序,它与许多关键方面不同mysqld二进制文件提供了MySQL 5.6发行版,以及两个版本mysqld不可互换。

此外,未连接到NDB群集的MySQL服务器不能使用NDB存储引擎并无法访问任何NDB群集数据。

可以镜像存储在NDB集群的数据节点中的数据;群集可以处理无其他影响的单个数据节点的故障,而不是由于丢失事务状态而中止的少量事务。由于事务应用程序预期处理事务失败,这不应该是问题的根源。

可以停止并重新启动各个节点,然后可以重新加入系统(群集)。滚动重启(依次重新启动所有节点)用于进行配置更改和软件升级(参见第18.5.5节,“执行NDB集群的滚动重启”)。滚动重启也用作在线添加新数据节点的过程的一部分(参见第18.5.7节,“在线添加NDB集群数据节点”)。有关数据节点的更多信息,它们在NDB集群中是如何组织的,以及它们如何处理和存储NDB集群数据,请参见第18.1.2节,“NDB群集节点,节点组,片段副本和分区”

备份和恢复NDB群集数据库可以使用NDBNDB集群管理客户端和ndb_restore.程序包含在NDB群集分发中。有关更多信息,请参阅第18.5.8节“NDB集群的在线备份”, 和第18.4.22节“ndb_restore - 恢复NDB群集备份”。您还可以使用为此目的提供的标准MySQL功能mysqldump.和mysql服务器。看第4.5.4节“mysqldump - 数据库备份程序”,以获取更多信息。

NDB集群节点可以采用用于节点间通信的不同传输机制;TCP / IP超过标准的100 Mbps或更快的以太网硬件用于大多数现实世界部署。