首页 > 数据库 >MySQL NDB Cluster 日常运维命令总结

MySQL NDB Cluster 日常运维命令总结

时间:2024-12-25 09:30:26浏览次数:5  
标签:ndb 运维 -- NDB mgm Cluster 日志 root 节点

一、数据备份

  1. 物理备份:
    • 在管理节点使用 ndb_mgm 客户端工具启动备份:
[root@管理节点 mysql-cluster]# ndb_mgm
-- NDB Cluster -- Management Client --
ndb_mgm> start backup
  • 备份过程中,可通过 ndb_mgm> show backup; 查看备份进度。备份完成后,数据文件会存储在各数据节点相应目录下,例如在数据节点可能位于 /u01/BACKUP/BACKUP-<备份编号>/ 目录,包含 .Data(数据文件)、.ctl(控制文件)、.log(日志文件)等。
  • 对于大数据量备份,为优化性能,可在 config.ini[ndbd default][ndbd] 中配置相关参数:
    • BackupDataBufferSize:指定将数据写入磁盘之前用于缓存数据的内存大小,合理设置可减少磁盘 I/O 次数,加快备份速度。
    • BackupLogBufferSize:设置将日志记录写入磁盘之前的缓冲内存大小,确保日志备份的高效性。
    • BackupMemory:为数据库节点中的备份操作分配的总内存,等于数据缓冲内存与日志缓冲内存之和,需根据服务器内存资源合理分配。
    • BackupWriteSize:每次写入磁盘的块大小,适用于备份数据缓冲和备份日志缓冲,适当增大该值可提升大文件写入性能,但不宜过大以免影响系统稳定性。

二、数据恢复

  1. 使用 ndb_restore 工具进行数据恢复:
[root@数据节点 ~]# ndb_restore -b <备份 id> -n <节点 id> -c host=<管理节点 IP>:<管理节点端口> -m -r <恢复路径>
  • 参数说明:
    • -b:指定备份的唯一标识符,用于确定要恢复的备份集。
    • -n:对应数据节点的节点 ID,确保数据恢复到正确节点。
    • -c:连接到 Cluster 管理器的连接串,格式为 host=<IP>:<端口>,通常为管理节点的 IP 和 ndb_mgm 服务端口(默认 1186)。
    • -m:恢复表定义,若表结构发生变化或丢失,此参数可确保重新创建正确的表结构。
    • -r:指向备份文件所在的路径,需准确无误,否则无法找到恢复数据源。
  • 示例:
[root@数据节点 ~]# ndb_restore -b 2 -n 2 -c host=10.24.32.180:1186 -m -r /u01/BACKUP/BACKUP-2
  • 注意事项:
    • 若在恢复过程中遇到 Configuration error: Error: Could not alloc node id at... 类似错误,可在 config.ini 中增加一个空节点 [mysqld],然后重新执行恢复命令。
    • 当数据分布在多个数据节点时,可能需要在多个节点上依次执行恢复操作,以确保数据完整性。恢复完成后,可在 SQL 节点查询数据验证恢复效果,如:
mysql> select count(1) from t_cluster;

三、日志管理

  1. 日志类型:
    • MySQL NDB Cluster 提供两种日志:
      • 集群日志(cluster log):记录所有节点生成的日志,便于集中管理和查看集群整体运行状况,一般推荐使用。通常存储在配置文件 config.ini 所在目录下,文件格式为 ndb_<管理节点号>_cluster.log
      • 节点日志(node log):仅记录数据节点的本地事件,多用于开发调试场景,日常运维较少依赖。
  2. 日志操作:
    • 使用 ndb_mgm 客户端工具管理集群日志:
      • 查看日志状态:
[root@管理节点 mysql-cluster]# ndb_mgm
-- NDB Cluster -- Management Client --
ndb_mgm> clusterlog info
 - 关闭日志:
ndb_mgm> clusterlog off
 - 开启日志:
ndb_mgm> clusterlog on
  1. 日志过滤:
    • 可从三个维度对集群日志进行过滤:
      • Category(类别):包括 startupshutdownstatisticscheckpointnoderestartconnectionerrorinfo 等,不同类别涵盖各类集群运行相关事件,可参考官方文档了解详情。设置特定类别日志记录的优先级阈值,如:
ndb_mgm> <节点 id> clusterlog <类别>=<阈值>

示例:将节点 10.24.32.181 的 startup 事件只记录级别为 3 以下的日志:

ndb_mgm> 4 clusterlog startup=3
 - **Priority(优先级)**:用 1 - 15 的数字表示,1 为最重要,15 为最不重要。每种 Category 有默认优先级阈值,低于阈值的日志才会被记录,通过设置可精细控制日志信息量。
 - **Severity Level(严重级别)**:有 `alert`、`critical`、`error`、`warning`、`info`、`debug` 等,可按需打开或关闭某些严重级别日志,如:
ndb_mgm> clusterlog toggle <严重级别>

示例:过滤掉 debuginfo 信息:

ndb_mgm> clusterlog toggle debug
ndb_mgm> clusterlog toggle info

四、节点管理

  1. 查看集群状态:
[root@管理节点 mysql-cluster]# ndb_mgm
-- NDB Cluster -- Management Client --
ndb_mgm> show

此命令实时展示集群各节点连接、运行状态,是日常运维首要操作,用于及时发现节点故障、连接异常等问题。例如,查看数据节点、SQL 节点是否正常在线,管理节点是否稳定运行。
2. 启动节点:

  • 启动管理节点:
[root@管理节点 mysql-cluster]# ndb_mgmd -f./config.ini

若管理节点意外停止,需用此命令结合正确的配置文件重启,确保集群管理服务恢复。

  • 启动数据节点:
[root@数据节点 local]# ndbd

数据节点故障、服务器重启或维护后,执行该命令启动数据存储服务。

  • 启动 SQL 节点:
[root@SQL 节点 ~]# service mysql.server start

SQL 节点用于应用程序交互,若停止需及时启动以保障业务正常访问数据库。
3. 关闭节点:

  • 关闭集群:
[root@管理节点 mysql-cluster]# ndb_mgm
-- NDB Cluster -- Management Client --
ndb_mgm> shutdown

注意,此命令执行后,SQL 节点不会自动关闭,需手动关闭:

[root@SQL 节点 ~]# service mysql.server stop
  • 单独关闭数据节点(特殊维护场景):
[root@数据节点 local]# kill [数据节点进程 ID]

先通过 ps -ef |grep ndbd 查找进程 ID,谨慎操作,避免数据丢失或集群不稳定,一般不建议随意单独关闭数据节点。

欢迎关注公众号《小周的数据库进阶之路》,更多精彩知识和干货尽在其中。

标签:ndb,运维,--,NDB,mgm,Cluster,日志,root,节点
From: https://blog.csdn.net/qq_36936192/article/details/144709070

相关文章

  • 智能监控与实时响应:下一代防火墙运维方案
        防火墙是维护网络安全的关键要素之一。随着网络攻击手段的不断复杂化、智能化以及高速化的发展,防火墙作为网络安全的第一道防线,其重要性愈发凸显。有效的防火墙管理不仅能够确保其运行和性能的稳定性,同时也能显著降低企业面临的外部威胁风险。随着防火墙数量的增加以......
  • 2024年12月中国数据库排行榜:群雄竞逐显风采,GoldenDB摘探花
    2024年末的墨天轮中国数据库排行榜如期发布。回顾整年,榜单持续波动:OceanBase与PolarDB交替登顶,前三甲的位置也不断迎来新晋挑战者。在最新一期的榜单中,GoldenDB凭借技术创新与市场积淀成功跃升前三,openGauss与TDSQL出现了位次调整,其他产品也在不断沉淀与创新中激发出新的动力。可......
  • 【数据库开发】探索数据库智能运维之数据库关键运行指标
    随着金融业务转型步伐加快、业务连续性要求趋严,对金融业信息系统运行的稳定性要求日益提升。数据库作为信息系统中关键技术基础,如何应用数据库海量运行数据,提升运行指标数据观测性,及时发现数据库运行潜在风险,是G行数据库管理团队一直探索的课题。数据库管理团队负责G行所有生产数......
  • 为什么运维要转行(非常详细),零基础入门到精通,看这一篇就够了
    为什么运维要转行粉丝提问:在各种APP里经常看到,趁年轻赶紧远离运维,为什么?互联网老兵是这样回答的:运维有很多分类,有干实施运维的,有干交付运维的,也有自动化运维,运维开发,云计算运维,大数据运维,网络运维。大多数人尤其是开发严重的运维,是初级运维,也有一部分是网络运维。这些......
  • Ansible(自动化运维)环境搭建及ansible-vault加密配置
    前言:原先这篇博客是在《Linux系统综合配置:yum源设置、逻辑卷制作》里的,现在想着ansible-vault加密配置是可以单独出一期的,就拆分出来了。一、安装ansible命令:sudodnfupdate命令:sudodnfinstallpython3查看版本:python3-V命令:sudodnfinstallpython3-pip命令:p......
  • 论文阅读:Revisiting Modularity Maximization for Graph Clustering: A Contrastive L
    论文地址:RevisitingModularityMaximizationforGraphClustering:AContrastiveLearningPerspective|Proceedingsofthe30thACMSIGKDDConferenceonKnowledgeDiscoveryandDataMining代码地址:https://github.com/EdisonLeeeee/MAGI摘要图聚类是一项基础......
  • 【YashanDB知识库】单机部署报错:prohibited operation, please check if the IP and u
    本文内容来自YashanDB官网,原文内容请见https://www.yashandb.com/newsinfo/7802960.html?templateId=1718516现象部署第1步install成功,在第2步deploy时报错。报错信息:prohibitedoperation,pleasecheckiftheIPandusernamearecorrect。原因主机配置文件(hosts.toml)......
  • 【YashanDB知识库】YMP迁移过程中报错YAS-02143或YAS-02193
    本文内容来自YashanDB官网,原文内容请见https://www.yashandb.com/newsinfo/7802944.html?templateId=1718516【标题】YMP迁移过程中报错accountlock【关键字】YMP迁移accountlockopenssl【问题描述】YMP所在机器的openssl版本低于1.1.1,在安装YMP及内置库时使用了--deps将......
  • 【YashanDB知识库】XMLAGG方法的兼容
    本文内容来自YashanDB官网,原文内容请见https://www.yashandb.com/newsinfo/7802943.html?templateId=1718516【关键字】XMLAGG方法的兼容【问题描述】崖山数据库不支持将XMLAGG相关的函数内容,需要替换成支持的功能函数WM_CONCAT(T.COLUMN_NAME)【问题原因分析】崖山数据库......
  • 【YashanDB知识库】update (子查询) set ORG_ID_STAN -ID 改写
    本文内容来自YashanDB官网,原文内容请见https://www.yashandb.com/newsinfo/7802941.html?templateId=1718516【关键字】update(子查询)setORG_ID_STAN=ID改写【问题描述】update(子查询)setORG_ID_STAN=ID改写【问题原因分析】update(子查询)setORG_ID_STAN=I......