• 首页
  • vue
  • TypeScript
  • JavaScript
  • scss
  • css3
  • html5
  • php
  • MySQL
  • redis
  • jQuery
  • 位置: MySQL 8 中文手册 -> MySQL NDB群集8.0

    NDB群集概述

    NDB群集是一项可以在无共享系统中群集内存数据库的技术。无共享架构使系统能够使用非常便宜的硬件,并且对硬件或软件的特定要求最少。

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

    NDB簇集成标准MySQL服务器称为一个内存集群存储引擎NDB(其代表“Ñ etwork d ATA ASE ”)。在我们的文档中,该术语NDB指的是安装程序中特定于存储引擎的部分,而“ MySQL NDB Cluster ”指的是一台或多台MySQL服务器与NDB存储引擎的组合。

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

    NDB群集组件

    所有这些程序一起构成一个NDB群集(请参见“ NDB群集程序”。当数据由NDB存储引擎存储时,表(和表数据)存储在数据节点中。因此,在群集中存储数据的工资核算应用程序中,如果一个应用程序更新了员工的薪水,则查询此数据的所有其他MySQL服务器都可以立即看到此更改。

    尽管NDB群集SQL节点使用mysqld服务器守护程序,但它在许多方面与MySQL 8.0发行版随附的mysqld二进制文件有所不同,并且mysqld的两个版本不可互换。

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

    NDB群集的数据节点中存储的数据可以镜像;集群可以处理单个数据节点的故障,而不会因为丢失事务状态而中止少量事务而产生其他影响。因为预计事务应用程序会处理事务失败,所以这不应成为问题的根源。

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

    可以使用NDBNDB Cluster管理客户端中的-native功能以及NDB Cluster发行版中包含的ndb_restore程序来完成NDB Cluster数据库的备份和还原。有关更多信息,请参见“ NDB群集的在线备份”和“ndb_restore-还原NDB群集备份”。您也可以在mysqldump和MySQL服务器中使用为此目的提供的标准MySQL功能。有关更多信息,请参见“mysqldump-数据库备份程序”。

    NDB群集节点可以采用不同的传输机制进行节点间通信。大多数实际部署中都使用标准的100 Mbps或更快的以太网硬件上的TCP / IP。