zabbix2.4版本升级到3.2版本
admin
2023-05-23 21:22:52
0次

zabbix3.2版本源码安装完毕,目前将2.4版本升级到3.2版本操作,只需要将2.4的数据库备份导出,然后将其导入3.2版本的数据库即可。

1、停止zabbix相关服务

service zabbix_server stop
service zabbix_agentd stop 
service mysqld stop
service php-fpm stop

2、zabbix2.4版数据库备份

mysqldump --opt -R -uzabbix -p zabbix --ignore-table=zabbix.history --ignore-table=zabbix.history_log --ignore-table=zabbix.history_str --ignore-table=zabbix.history_text --ignore-table=zabbix.history_uint --ignore-table=zabbix.trends --ignore-table=zabbix.trends_uint > zabbix.sql

注释:

–opt:此Mysqldump命令参数是可选的,如果带上这个选项代表激活了Mysqldump命令的quick,add-drop-table,add-locks,extended-insert,lock-tables参数,也就是通过–opt参数在使用Mysqldump导出Mysql数据库信息时不需要再附加上述这些参数。

--ignore-table:不导出制定表格,此项可根据具体情况添加,由于历史数据太多,只将重要的zabbix信息导出了,节省时间。

3、将数据库备份导入zabbix3.2版本的数据库

service mysqld start
mysql -uzabbix -p zabbix < zabbix.sql

4、启动服务器

service php-fpm start
service zabbix_agentd start
service zabbix_server start

但是,这样导入数据库是起不来的会报错,具体问题具体分析,去看下zabbix_server.log日志,查找一下原因。我碰到的问题是zabbix-server在自检升级数据库时,提示有一些表格是已经存在,导致启动失败,既然存在造成的就删掉好了。

下列是我删掉的表格:

SET FOREIGN_KEY_CHECKS = 0;
drop table application_prototype;
drop table item_application_prototype;
drop table application_discovery;
drop table opinventory;
drop table opinventory;
drop table sysmap_user;
drop table sysmap_usrgrp;
drop table screen_user;
drop table screen_usrgrp;
drop table slideshow_user;
drop table slideshow_usrgrp;
drop table trigger_tag;
drop table event_tag;
drop table problem;
drop table event_recovery;
drop table problem_tag;
drop table correlation;
drop table corr_condition;
drop table corr_condition_tag;
drop table corr_condition_group;
drop table corr_condition_tagpair;
drop table corr_condition_tagvalue;
drop table corr_operation;
drop table task;
drop table task_close_problem;
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
;


注释:

SET FOREIGN_KEY_CHECKS = 0;#是关闭外键检查,不关闭,上述表格删不掉。


service zabbix_server start

应该就可以起来了,具体问题需要结合日志去排查,每个环境问题可能不一样,所以要有针对性的去解决。


相关内容

热门资讯

空调连续工作多久需要停机休息 空调连续工作的时间取决于多个因素,包括空调的型号、功率、使用环境和维护情况等。一般来说,空调可以连续...
空调哪个符号是除湿的 空调除湿功能通常用一个水滴形状的符号表示。不同品牌和型号的空调遥控器可能会有所差异,但一般来说,除湿...
格力空调多长时间加一次氟利昂 1、一般情况下,空调对氟利昂的使用量是非常小的,所以在空调使用了四年左右的时候再考虑加也没问题。2、...
空调用多长时间需要加氟一次 一般情况下是五年。当出现以下这几种情况时,空调才需要加氟。1、空调的室内机和室外机各有两个接口,当接...
格调生活·C标思享荟:卡萨帝在... 9月12日的郑州龙湖金融岛,夜风轻拂,灯光璀璨。“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑...
品牌价值破千亿、高端份额持续领... 9月12日,“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑州站”在郑州龙湖金融岛举办。2026...
空调主板坏了修800还是换新的 空调主板坏了是修还是换新,需要考虑多个因素,以下是一些建议:1. 维修成本:如果维修费用较低,比如 ...
空调开多久需要休息多长时间 问题:空调开多久需要休息多长时间回答:1、在使用空调的过程中,一般空调开7~8个小时左右需要休息2~...
中央空调多长时间清洗一次 1、一般空调开机前清洗一次即可,空调开机中间时段再清洗一次,空调关机时清洗一次,这样比较合理。2、空...
中央空调氟利昂多久加一次 看空调制热和制冷程度,很多人的观点认为氟利昂必须一年放一次,其实这个观点是错误的,理解上面有点偏差,...