1. 问题:
zabbix_server日志出现大量如下错误:
query failed: [1526] Table has no partition for value 1507509984
2. 解决
查看zabbix的数据库,看看有没有如下几个存储过程:
partition_create
partition_drop
partition_maintenance
partition_maintenance_all
partition_verify
可能会没有partition_maintenance_all,可以按照官方文档给出的sql语句创建:
DELIMITER $$CREATE PROCEDURE `partition_maintenance_all`(SCHEMA_NAME VARCHAR(32))BEGINCALL partition_maintenance(SCHEMA_NAME,'history', 28, 24, 14);
CALL partition_maintenance(SCHEMA_NAME,'history_log', 28, 24, 14);
CALL partition_maintenance(SCHEMA_NAME,'history_str', 28, 24, 14);
CALL partition_maintenance(SCHEMA_NAME,'history_text', 28, 24, 14);
CALL partition_maintenance(SCHEMA_NAME,'history_uint', 28, 24, 14);
CALL partition_maintenance(SCHEMA_NAME,'trends', 730, 24, 14);
CALL partition_maintenance(SCHEMA_NAME,'trends_uint', 730, 24, 14);END$$
DELIMITER ;
有了这几个存储过程后,登录zabbix数据库执行以下sql语句:
CALL partition_maintenance_all(‘zabbix‘);
这个语句可能跑比较长的时间,耐心等待。
之后重启zabbix_server即可。
可以将这个语句放到crontab中跑,这样就不会出现这种情况了:
0 8 1 * * mysql -uzabbix -ppassword zabbix -e "CALL partition_maintenance_all('zabbix');"
当Zabbix Server日志出现'Table has no partition for value'错误时,可能导致图表无法显示数据。解决方法包括检查并创建必要的数据库存储过程,如partition_maintenance_all,然后执行CALL partition_maintenance_all('zabbix')。此步骤可能需要较长时间,执行后重启Zabbix Server。为防止问题再次发生,可将执行语句加入到crontab定期任务。
2978

被折叠的 条评论
为什么被折叠?



