@mindays 这个变量。
不要忘记将这条命令加入到你的cron中!
mysql -B -h localhost -u zabbix -pPASSWORD zabbix -e 'CALLcreate_zabbix_partitions();'
自动创建分区的脚本:
https://github.com/xsbr/zabbixzone/blob/master/zabbix-mysql-autopartitioning.sql
DELIMITER //
DROP PROCEDURE IF EXISTS `zabbix`.`create_zabbix_partitions`//
CREATE PROCEDURE `zabbix`.`create_zabbix_partitions` ()
BEGIN
CALL zabbix.create_next_partitions('zabbix','history');
CALL zabbix.create_next_partitions('zabbix','history_log');
CALL zabbix.create_next_partitions('zabbix','history_str');
CALL zabbix.create_next_partitions('zabbix','history_text');
CALL zabbix.create_next_partitions('zabbix','history_uint');
CALL zabbix.drop_old_partitions('zabbix','history');
CALL zabbix.drop_old_partitions('zabbix','history_log');
CALL zabbix.drop_old_partitions('zabbix','history_str');
CALL zabbix.drop_old_partitions('zabbix','history_text');
CALL zabbix.drop_old_partitions('zabbix','history_uint');
END //
DROP PROCEDURE IF EXISTS `zabbix`.`create_next_partitions` //
CREATE PROCEDURE `zabbix`.`create_next_partitions` (SCHEMANAMEvarchar(64), TABLENAME varchar(64))
BEGIN
DECLARE NEXTCLOCK timestamp;
DECLARE PARTITIONNAME varchar(16);
DECLARE CLOCK int;
SET @totaldays = 7;
SET @i = 1;
createloop: LOOP
SET NEXTCLOCK = DATE_ADD(NOW(),INTERVAL @i DAY);
SET PARTITIONNAME = DATE_FORMAT( NEXTCLOCK, 'p%Y%m%d' );
SET CLOCK = UNIX_TIMESTAMP(DATE_FORMAT(DATE_ADD( NEXTCLOCK,INTERVAL 1 DAY),'%Y-%m-%d 00:00:00'));
CALL zabbix.create_partition( SCHEMANAME, TABLENAME, PARTITIONNAME,CLOCK );
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/ruanjian/article-37966-3.html
呵呵在南海说自由我们有权利自由
你一来正好給我们一个接口把人造岛军事化
结果呢