为了让您熟悉基础知识,我们将描述一个功能正常的NDB集群的最简单的可能配置。在此之后,您应该能够根据本章其他相关部分提供的信息设计您想要的设置。
首先,您需要创建一个配置目录,例如/var/lib/mysql-cluster
,以系统身份执行以下命令根
用户:
壳> mkdir /var/lib/mysql-cluster
在此目录中,创建一个名为config.ini
它包含以下信息。用适当的值代替主机名
而且DataDir
根据系统的需要。
# file "config.ini" -显示最小的设置,包括1个数据节点,# 1管理服务器和3个MySQL服务器。空的默认部分不是必需的,只是为了完整起见才显示出来。数据节点必须提供主机名,但MySQL服务器不需要这样做。#如果您不知道机器的主机名,请使用localhost。DataDir参数也有默认值,但建议显式设置。#注意:[db], [api],和[mgm]分别是[ndbd], [mysqld], [ndb_mgmd], #的别名。[db]已弃用,不应在新的安装中使用。[ndbd default] NoOfReplicas= 1 [mysqld default] [ndb_mgmd default] [tcp default] [ndb_mgmd] HostName= myhost.example.com [ndbd] HostName= myhost.example.com DataDir= /var/lib/mysql-cluster [mysqld] [mysqld] [mysqld]
你现在可以开始ndb_mgmd管理服务器。默认情况下,它尝试读取config.ini
文件在其当前工作目录中,因此将位置更改到文件所在的目录中,然后调用ndb_mgmd:
CD /var/lib/mysql-cluster Shell > ndb_mgmd
然后通过运行启动单个数据节点ndbd:
壳> ndbd
默认情况下,ndbd寻找管理服务器在本地主机
在端口1186上。
最后,将位置更改为MySQL数据目录(通常/var/lib/mysql
或/usr/local/mysql/data
),并确保my.cnf
文件中包含启动NDB存储引擎所需的选项:
(mysqld) ndbcluster
你现在可以像往常一样启动MySQL服务器:
Shell > mysqld_safe——user=mysql &
请稍等片刻,以确保MySQL服务器正常运行。如果你看到告示mysql结束
,检查服务器的.err
文件,找出哪里出了问题。
如果到目前为止一切顺利,您现在可以开始使用集群了。连接到服务器并验证NDBCLUSTER
存储引擎已启用:
shell> mysql欢迎使用mysql monitor。命令以;或\ g。您的MySQL连接id是1到服务器版本:8.0.25输入'help;'或'\h'帮助。输入'\c'清除缓冲区。mysql>显示引擎*************************** 12。行 *************************** 引擎:NDBCLUSTER支持:是的评论:集群、容错、基于内存的表 *************************** 13。行 *************************** 引擎:NDB支持:是的评论:别名NDBCLUSTER……
根据服务器的配置方式,前面示例输出中显示的行号可能与系统上显示的行号不同。
试着创建一个NDBCLUSTER
表:
mysql的>使用测试;CREATE TABLE (i INT) ENGINE=NDBCLUSTER;查询好,0行影响(0.09秒)mysql >显示ct \ G创建表 *************************** 1。Create Table ' ctest ' (' i ' int(11) default NULL) ENGINE=ndbcluster default CHARSET=latin1 1 row in set (0.00 sec)
要检查节点是否正确设置,请启动管理客户端:
壳> ndb_mgm
使用显示命令从管理客户端内部获取集群状态的报告:
ndb_mgm> SHOW Cluster Configuration --------------------- [ndbd(NDB)] 1 node(s) id=2 @127.0.0.1(版本:8.0.26- nbdb -8.0.26, Nodegroup: 0, *) [ndb_mgmd(MGM)] 1 node(s) id=1 @127.0.0.1(版本:8.0.26- nbdb -8.0.26) [mysqld(API)] 3 node(s) id=3 @127.0.0.1(版本:8.0.26- nbdb -8.0.26) id=4(未连接,接受连接from any host) id=5(未连接,接受连接from any host)
至此,您已经成功地设置了一个工作的NDB集群。使用创建的任何表,现在可以在集群中存储数据引擎= NDBCLUSTER
或者它的别名引擎= NDB
.