You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

重装并升级MariaDB后Monit提示校验和失败的问题求助

重装并升级MariaDB后Monit提示校验和失败的问题求助

嘿,我来帮你捋清楚这个问题的根源和解决办法~

首先,你遇到的校验和失败问题其实很好理解:Monit在首次监控/usr/bin/mysqld_safe(对应mariadb_bin)和/usr/lib/systemd/system/mariadb.service(对应mariadb_init)这两个文件时,会自动计算并存储它们的校验和哈希值。当你从MariaDB 10.2升级到10.4后,这两个文件的内容已经和旧版本完全不一样了,Monit对比新的文件哈希和之前存储的旧哈希,自然就会提示“Checksum failed”。

至于你提到的group database,这个只是Monit的分组功能而已——把和数据库相关的监控项归到同一个组里,方便你批量操作(比如一键启停整个组的监控、查看组内所有项的状态),和当前的校验和问题没有关系哈。

下面给你几个解决办法,你可以根据自己的情况选:

  • 方法一:重置Monit状态文件(最彻底)

    1. 先停止Monit服务:systemctl stop monit
    2. 找到Monit的状态存储文件,通常路径是/var/lib/monit/monit.state,删除它:rm /var/lib/monit/monit.state
    3. 重启Monit:systemctl start monit
      这样Monit会重新扫描所有监控项,计算并存储新的校验和,告警也就消失了。
  • 方法二:手动让Monit重新校验(无需停服务)

    1. 先重新加载Monit配置:monit reload
    2. 分别让Monit重新校验两个文件:
      • monit validate mariadb_bin
      • monit validate mariadb_init
        执行完这两步,Monit就会更新这两个文件的校验和记录,不再触发告警。
  • 方法三:暂时禁用校验和检查(不推荐,除非特殊场景)
    如果你暂时不想用校验和检查功能,可以打开你的MariaDB Monit配置文件,把mariadb_bin和mariadb_init块里的if failed checksum then unmonitor这一行注释掉(在前面加#),然后执行monit reload让配置生效。不过还是建议保留这个检查,它能帮你及时发现文件被篡改的异常情况。

备注:内容来源于stack exchange,提问作者OsakaWebbie

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.21 07:39:34