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

21.5.9 MySQL Server for NDB群集

mysqld.是传统的MySQL服务器进程。要与NDB集群一起使用,mysqld.需要以支持为支持NDB.存储引擎,因为它位于可从中提供的预编译二进制文件中https://dev.10bet靠谱mys10bet手机中文版ql.com/downloads/。如果从源代码构建MySQL,则必须调用CMake与之-DWITH_NDBCLUSTER = 1选项包括支持NDB.

有关从源代码编译NDB Cluster的更多信息,请参见第21.2.1.4节“从Linux源构建NDB集群”, 和第21.2.2.2节,“在Windows上从源程序编译和安装NDB集群”

(信息mysqld.选择和变量,除了与NDB集群相关的本节中讨论的那些,还可以查看第21.3.3.9节“MySQL Server选项和NDB群集的变量”。)

如果是mysqld.二进制文件已经在Cluster支持下构建ndbcluster.默认情况下仍禁用存储引擎。您可以使用两种可能的选项中的任何一种启用此引擎:

  • - ndbcluster.作为启动时在命令行上的启动选项mysqld.

  • 插入包含的线ndbcluster.(mysqld)部分部分my.cnf文件。

一种简单的方法来验证您的服务器是否正在运行ndbcluster.已启用存储引擎是发出展示引擎MySQL Monitor中的语句(mysql.)。您应该看到这个值是的作为支持持续价值ndbcluster.。如果你看到在此行或输出中没有显示此类行,您无法运行NDB.MySQL的启用版本。如果你看到禁用在此行中,您需要以刚刚描述的两种方式中的任何一种启用它。

要读取群集配置数据,MySQL Server至少需要三条信息:

  • MySQL Server自己的群集节点ID

  • 管理服务器的主机名或IP地址

  • 它可以连接到管理服务器的TCP / IP端口的数量

节点id可以动态分配,因此没有必要明确指定它们。

mysqld.参数NDB-ConnectString.用于在启动时在命令行上指定连接字符串mysqld.或在my.cnf。连接字符串包含可以找到管理服务器的主机名或IP地址,以及它使用的TCP / IP端口。

在下面的例子中,ndb_mgmd.10bet靠谱mysql.com是管理服务器所在的主机,而管理服务器侦听端口1186上的群集消息:

shell> mysqld --ndbcluster --ndb-connectstring = ndb_mgm10bet靠谱d.mysql.com:1186

第21.3.3.3节“NDB集群连接字符串”,以获得有关连接字符串的更多信息。

鉴于此信息,MySQL Server可以作为群集的完整参与者。(我们经常参考amysqld.处理以这种方式作为SQL节点运行。)它完全了解所有群集数据节点以及它们的状态,并建立与所有数据节点的连接。在这种情况下,能够使用任何数据节点作为事务协调器,并读取和更新节点数据。

你可以看到mysql.客户端使用MySQL服务器是否已连接到群集显示processlist.。如果MySQL Server已连接到群集,并且您有过程权限,然后输出的第一行如下所示:

mysql> show processlist \ g *************************** 1.行***************************** ID:1用户:系统用户主机:db:command:守护程序时间:1状态:等待NDBCluster信息的活动:null
重要的

参加NDB集群,mysqld.进程必须开始这两个的选项- ndbcluster.--ndb-connectstring.(或他们的等同物my.cnf)。如果mysqld.只有只有- ndbcluster.选项,或者如果无法与集群联系,则无法使用NDB.桌子,无论存储引擎如何,都可以创建任何新表。后一种限制是一种安全措施,旨在防止创建具有相同名称的表格NDB.表,而SQL节点没有连接到集群。如果您希望使用不同的存储引擎创建表,而mysqld.进程没有参与到NDB集群中,您必须重新启动服务器没有- ndbcluster.选择。