文章目录
问题描述
OpsEye监控产品使用mysql 8.0.39版本数据库。在2024年11月13日,发现无法正常采集数据和监控。同一时间,用于监控OpsEye的zabbix产品也出现无法登录的问题。
OpsEye产品和zabbix的页面表现如下:
问题定位
(1)zabbix和OpsEye日志表现
检查zabbix日志,发现通过socket文件访问mysql失败,但并非持续失败。自11月13日首次出现问题日志,时好时坏一直持续到11月18日彻底无法访问mysql。OpsEye日志也有类似的问题
(2)mysql日志表现
Mysql无任何错误日志打印。
(3)syslog日志表现
cat syslog |more
发现11月13日凌晨6点有升级替换操作
(4)history查看有mysql后台升级
cat /var/log/apt/history.log
(5)查看升级策略配置,自动升级开启
10periodic:自动更新软件包和系统的频率配置
20auto-upgrades是否自动安装可升级的软件包配置
- APT::Periodic::Update-Package-Lists: 是否自动更新软件包,1表示每天更新软件包。
- APT::Periodic::Unattended-Upgrade: 是否自动安装可升级软件包,1表示自动安装。
(6)查看升级细节,升级过程中重启mysql失败
cat /var/log/apt/term.log
另一台正常的mysql自动升级后重启成功
问题结论
Ubuntu 20.04系统安装MySQL 8.0版本,MySQL自动升级到8.0.40时,如果重启未成功,那么后续可能出现访问异常。
解决方案
(1)ubuntu 20.04 版本,mysql8.0版本,检查history日志是否有升级mysql8.0.40的动作
(2)如果有升级,那么通过ps -ef|grep mysql查看是否有重启动作,或查看term.log日志是否有重启异常
(3)如果term日志存在异常,或者ps命令发现数据库并未在自动升级后重启,建议重启mysql,以防遇到未知问题