热衷于分享各种干货知识,大家有想看或者想学的可以评论区留言,秉承着“开源知识来源于互联网,回归于互联网”的理念,分享一些日常工作中能用到或者比较重要的内容,希望大家能够喜欢,不足之处请大家多提宝贵地意见,我们一起提升,守住自己的饭碗。
正文开始
一、部署
(一)环境准备
确定两台服务器,分别作为管理节点与 SQL + 数据节点组合(以下简称组合节点),记录其 IP 地址: 管理节点:192.168.1.1 组合节点:192.168.1.2
(二)软件下载
在任意节点执行安装操作:
下载 MySQL NDB Cluster 软件:
[root@node1 ]# wget https://dev.mysql.com/get/Downloads/MySQL-Cluster-7.5/mysql-cluster-gpl-7.5.9-linux-glibc2.12-x86_64.tar.gz
复制
(三)安装 SQL 与数据节点(组合节点)
创建 mysql 用户和组:
[root@node2 ~]# grep mysql etc/passwd
[root@node2 ~]# grep mysql etc/group
[root@node2 ~]# groupadd mysql
[root@node2 ~]# useradd -g mysql -s bin/false mysql复制
解压缩 mysql-cluster 软件:
[root@node2 local]# tar zxvf root/mysql-cluster-gpl-7.5.9-linux-glibc2.12-x86_64.tar.gz
[root@node2 local]# ln -s mysql-cluster-gpl-7.5.9-linux-glibc2.12-x86_64/ mysql复制
设置数据库系统:
[root@node2 local]# cd mysql
[root@node2 mysql]#./bin/mysqld --initialize --user=mysql复制
记录初始化生成的临时 root 密码。 4. 拷贝 MySQL 启动脚本:
[root@node2 mysql]# cp support-files/mysql.server etc/init.d/mysql.server
复制
修改 Root 密码:
[root@node2 mysql]# service mysql.server start
[root@node2 mysql]#./bin/mysql -uroot -p
Enter password: (输入临时密码)
mysql> alter user 'root'@'localhost' identified by 'root';
Query OK, 0 rows affected (0.00 sec)复制
(四)安装管理节点
将 ndb_mgm、ndb_mgmd 拷贝至 usr/local/bin/ 目录中:
[root@node1 local]# scp root/mysql-cluster-gpl-7.5.9-linux-glibc2.12-x86_64/bin/ndb_mgm* root@192.168.1.100:/usr/local/bin/
复制
(五)配置数据节点和 SQL 节点(组合节点)
创建并编辑 etc/my.cnf 文件:
[root@node2 ~]# vi etc/my.cnf
[mysqld]
ndbcluster #run NDB storage engine
[mysql_cluster]
ndb-connectstring=[管理节点 IP] #location of management server复制
(六)配置管理节点
创建目录并编辑配置文件:
[root@node1 local]# mkdir mysql
[root@node1 local]# cd mysql/
[root@node1 mysql]# mkdir mysql-cluster
[root@node1 mysql-cluster]# vi config.ini
[ndbd default]
#Opitions affecting ndbd processes on all nodes:
NoOfReplicas=1 #Number of replicas
[ndb_mgmd]
HostName=192.168.1.1 #Hostname or IP address of MGM node
DataDir=/var/lib/mysql-cluster #Dir for MGM node log files
[ndbd]
HostName=192.168.1.2
NodeId=2
DataDir=/u01
[mysqld]
HostName=192.168.1.2复制
(七)启动 Cluster
启动管理节点:
[root@node1 mysql-cluster]# ndb_mgmd -f./config.ini
复制
启动组合节点上的数据节点与 SQL 节点:
[root@node2 local]# ndbd
[root@node2 ~]# service mysql.server start复制
二、日常运维命令
(一)查看集群状态
[root@node1 mysql-cluster]# ndb_mgm
-- NDB Cluster -- Management Client --
ndb_mgm> show复制
此命令用于实时查看集群各节点的连接状态、节点信息等,以便及时发现节点故障或异常。
(二)启动节点
启动管理节点:
[root@node1 mysql-cluster]# ndb_mgmd -f./config.ini
复制
若管理节点意外停止,使用此命令依据配置文件重启。 2. 启动组合节点的数据节点:
[root@node2 local]# ndbd
复制
数据节点故障或重启服务器后,执行此命令启动。 3. 启动组合节点的 SQL 节点:
[root@node2 ~]# service mysql.server start
复制
(三)关闭节点
关闭集群:
[root@node1 mysql-cluster]# ndb_mgm
-- NDB Cluster -- Management Client --
ndb_mgm> shutdown复制
注意,此命令执行后,SQL 节点不会自动关闭,需手动关闭:
[root@node2 ~]# service mysql.server stop
复制
单独关闭数据节点(一般不建议,除非特殊维护需求):
[root@node2 local]# kill [数据节点进程 ID]
复制
先通过 ps -ef |grep ndbd
查找进程 ID。
(四)备份与恢复
备份集群数据:
[root@node1 mysql-cluster]# ndb_mgm
-- NDB Cluster -- Management Client --
ndb_mgm> start backup;复制
备份过程中可通过 ndb_mgm> show backup;
查看备份进度。 2. 恢复集群数据(假设已有备份文件):
[root@node2 mysql]#./bin/mysqlbinlog [备份文件路径] |./bin/mysql -uroot -p
复制
输入密码后即可恢复数据,注意备份文件路径需准确。
(五)监控集群性能
使用 MySQL 自带的性能监控工具,如:
[root@node2 mysql]#./bin/mysqladmin -uroot -p extended-status
复制
输入密码后,可获取一系列性能指标,包括连接数、查询执行情况、缓存命中率等,用于分析集群性能瓶颈。
查看节点日志: 管理节点日志: /var/lib/mysql-cluster/ndb_mgmd.log
数据节点日志: /u01/ndbd.log
(根据配置的 DataDir 而定)SQL 节点日志: /usr/local/mysql/data/[主机名].mysql.com.err
(根据实际安装路径而定) 通过查看日志,排查节点启动失败、性能异常等问题根源。
文中的概念来源于互联网,如有侵权,请联系我删除。
欢迎关注公众号:小周的数据库进阶之路,一起交流数据库、中间件和云计算等技术。如果觉得读完本文有收获,可以转发给其他朋友,大家一起学习进步!感兴趣的朋友可以加我微信,拉您进群与业界的大佬们一起交流学习。
文章转载自小周的数据库进阶之路,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
评论
相关阅读
2025年4月中国数据库流行度排行榜:OB高分复登顶,崖山稳驭撼十强
墨天轮编辑部
2111次阅读
2025-04-09 15:33:27
【MySQL 30周年庆】MySQL 8.0 OCP考试限时免费!教你免费领考券
墨天轮小教习
1868次阅读
2025-04-25 18:53:11
数据库国产化替代深化:DBA的机遇与挑战
代晓磊
984次阅读
2025-04-27 16:53:22
2025年3月国产数据库大事记
墨天轮编辑部
924次阅读
2025-04-03 15:21:16
MySQL 30 周年庆!MySQL 8.4 认证免费考!这次是认真的。。。
严少安
669次阅读
2025-04-25 15:30:58
2025年3月国产数据库中标情况一览:TDSQL大单622万、GaussDB大单581万……
通讯员
639次阅读
2025-04-10 15:35:48
征文大赛 |「码」上数据库—— KWDB 2025 创作者计划启动
KaiwuDB
524次阅读
2025-04-01 20:42:12
数据库,没有关税却有壁垒
多明戈教你玩狼人杀
509次阅读
2025-04-11 09:38:42
国产数据库需要扩大场景覆盖面才能在竞争中更有优势
白鳝的洞穴
490次阅读
2025-04-14 09:40:20
墨天轮个人数说知识点合集
JiekeXu
471次阅读
2025-04-01 15:56:03