升级zabbix到3.2.1报数据库升级失败的错误-创新互联-成都快上网建站

升级zabbix到3.2.1报数据库升级失败的错误-创新互联

一 问题描述

成都创新互联成立与2013年,是专业互联网技术服务公司,拥有项目网站设计、成都网站设计网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元兴山做网站,已为上家服务,为兴山各地企业和个人服务,联系电话:028-86922220

 今天把zabbix server和zabbix proxy升级到3.2.1。先停掉zabbix server然后挨个升级zabbix proxy最后再升级zabbix server。zabbix proxy升级的时候没有错误,可以顺利进行。但是升级zabbix server的时候报出以下错误:

  4250:20161010:001506.980 using configuration file: /opt/app/zabbix/conf/zabbix_server.conf   4250:20161010:001506.998 current database version (mandatory/optional): 03000000/03000000   4250:20161010:001506.998 required mandatory version: 03020000   4250:20161010:001506.998 starting automatic database upgrade   4250:20161010:001507.010 [Z3005] query failed: [1091] Can't DROP 'history_log_2'; check that column/key exists [drop index history_log_2 on history_log]   4250:20161010:001507.011 database upgrade failed

之前是对zabbix的数据库做过表分区

二 问题解决

 查看zabbix问题反馈是由于zabbix 3.2在升级的时候需要drop history_log_2这个索引,如果没有就会报错。

DROP TABLE history_log; DROP TABLE history_text; CREATE TABLE `history_log` ( `id` BIGINT(20) UNSIGNED NOT NULL, `itemid` BIGINT(20) UNSIGNED NOT NULL, `clock` INT(11) NOT NULL DEFAULT '0', `timestamp` INT(11) NOT NULL DEFAULT '0', `source` VARCHAR(64) NOT NULL DEFAULT '' COLLATE 'utf8_bin', `severity` INT(11) NOT NULL DEFAULT '0', `value` TEXT NOT NULL COLLATE 'utf8_bin', `logeventid` INT(11) NOT NULL DEFAULT '0', `ns` INT(11) NOT NULL DEFAULT '0', PRIMARY KEY (`id`), UNIQUE INDEX `history_log_2` (`itemid`, `id`), INDEX `history_log_1` (`itemid`, `clock`) ) COLLATE='utf8_bin' ENGINE=InnoDB ; CREATE TABLE `history_text` ( `id` BIGINT(20) UNSIGNED NOT NULL, `itemid` BIGINT(20) UNSIGNED NOT NULL, `clock` INT(11) NOT NULL DEFAULT '0', `timestamp` INT(11) NOT NULL DEFAULT '0', `source` VARCHAR(64) NOT NULL DEFAULT '' COLLATE 'utf8_bin', `severity` INT(11) NOT NULL DEFAULT '0', `value` TEXT NOT NULL COLLATE 'utf8_bin', `logeventid` INT(11) NOT NULL DEFAULT '0', `ns` INT(11) NOT NULL DEFAULT '0', PRIMARY KEY (`id`), UNIQUE INDEX `history_text_2` (`itemid`, `id`), INDEX `history_text_1` (`itemid`, `clock`) ) COLLATE='utf8_bin' ENGINE=InnoDB ;

升级完成以后,由于history_text和history_log重新创建了,原来的分区脚本不能直接对这两个表分区

需要先手动分区后脚本才能使用

http://john88wang.blog.51cto.com/2165294/1771557

参考文档:

http://john88wang.blog.51cto.com/2165294/1771082

https://zabbix.com/forum/showthread.php?p=189543

https://support.zabbix.com/browse/ZBX-11203

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


网站名称:升级zabbix到3.2.1报数据库升级失败的错误-创新互联
分享链接:http://kswjz.com/article/hsjco.html
扫二维码与项目经理沟通

我们在微信上24小时期待你的声音

解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流