1.zabbix部分历史数据表,在创建的时候可以采用分区表的方式
诸如一下为oracle部分表:
-- Create table
create table ZABBIX.HISTORY_TEXT
(
itemid NUMBER(20) not null,
clock NUMBER(10) default '0' not null,
value NCLOB default '',
ns NUMBER(10) default '0' not null,
upd_time TIMESTAMP(6) default SYSTIMESTAMP not null,
ins_time as ("ZABBIX"."UNIX_TO_ORACLE"("CLOCK"))
) tablespace ZABBIX_SCHE_DATA_TBS
partition by range(UPD_TIME) interval (numtoyminterval(1,'month'))
(partition P_20230301 values less than (TIMESTAMP' 2023-03-01 00:00:00')
);
alter table ZABBIX.HISTORY_TEXT add CONSTRAINT PK_HISTORY_TEXT primary key (ITEMID, CLOCK, NS, UPD_TIME) using index local tablespace ZABBIX_SCHE_DATA_TBS;
create table ZABBIX.HISTORY_LOG
(
itemid NUMBER(20) not null,
clock NUMBER(10) default '0' not null,
timestamp NUMBER(10) default '0' not null,
source NVARCHAR2(64) default '',
severity NUMBER(10) default '0' not null,
value NCLOB default '',
logeventid NUMBER(10) default '0' not null,
ns NUMBER(10) default '0' not null,
upd_time TIMESTAMP(6) default SYSTIMESTAMP not null,
ins_time as ("ZABBIX"."UNIX_TO_ORACLE"("CLOCK"))
) tablespace ZABBIX_SCHE_DATA_TBS
partition by range(UPD_TIME) interval (numtoyminterval(1,'month'))
(partition P_20230301 values less than (TIMESTAMP' 2023-03-01 00:00:00')
);
alter table ZABBIX.HISTORY_LOG add CONSTRAINT PK_HISTORY_LOG primary key (ITEMID, CLOCK, NS, UPD_TIME) using index local tablespace ZABBIX_SCHE_DATA_TBS;
create table ZABBIX.HISTORY_STR
(
itemid NUMBER(20) not null,
clock NUMBER(10) default '0' not null,
value NVARCHAR2(255) default '',
ns NUMBER(10) default '0' not null,
upd_time TIMESTAMP(6) default SYSTIMESTAMP not null,
ins_time as ("ZABBIX"."UNIX_TO_ORACLE"("CLOCK"))
) tablespace ZABBIX_SCHE_DATA_TBS
partition by range(UPD_TIME) interval (numtoyminterval(1,'month'))
(partition P_20230301 values less than (TIMESTAMP' 2023-03-01 00:00:00')
);
alter table ZABBIX.HISTORY_STR add CONSTRAINT PK_HISTORY_STR primary key (ITEMID, CLOCK, NS, UPD_TIME) using index local tablespace ZABBIX_SCHE_DATA_TBS;
Mysql和oracle都可以,按照时间,定期删除分区数据,更新统计信息。
收起如果Zabbix 6.0运行一段时间后变得比较慢,可能是由于数据库方面的问题引起的。以下是一些可能的解决方案:
总之,要解决Zabbix 6.0运行变慢的问题,需要对数据库进行优化和清理,并考虑增加硬件资源或调整Zabbix配置。