MySQL database "zabbix" on "localhost" is not available: Can't connect to l


一、情景描述

监控告警:MySQL database "zabbix" on "localhost" is not available: Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (111),到数据库服务器查看发现/data盘空间满了,进去后发现是mysql目录太大导致,需要清理zabbix下的mysql历史数据。

mysql在哪里可以在配置文件中找到,我的是放在datadir=/data/mysql。

二、解决方法

1.停zabbix-server服务

2.进入zabbix数据库找到history和history_uint

①mysql -uroot -p123456 -P3306 -h172.30.5.8

②use zabbix

③desc history;       desc history_uint;

④查看时间戳

date +%s -d "May 13 11:36:10"

⑤清理时间戳之前的历史数据。

delete from history where clock < 1652412970;

optimize table history

3.重启zabbix-server服务

/usr/sbin/zabbix_server_mysql -c /etc/zabbix/zabbix_server.conf