CentOS7.8 之前从7.5升级
PHP7.2 之前从5.4升级
MariaDB 10.3.23 之前从5.5升级
Zabbix 4.2版本 之前从4.0升级上来的) 理论应该可以4.0直接升级到4.4或5.0

  • 根据官方文档升级
    https://www.zabbix.com/documentation/4.4/manual/installation/upgrade/packages/rhel_centos

升级完成遇到两个问题:

  • 一.登Zabbix网页提示
    current database version (mandatory/optional): 04030046/04030046
    required mandatory version: 04040000

    解决:登陆mysql -u root -p

    update dbversion set mandatory=4040000;
    flush privileges;

    问题一解决

  • 二..登陆Zabbix网页会提示
    错误:zabbix server is not running: the information displayed may not be current
    Zabbix4.2升级4.4的错误处理_第1张图片


查看zabbix服务器日志 cat /var/log/zabbix/zabbix_server.log
114829:20200813:154856.950 using configuration file: /etc/zabbix/zabbix_server.conf
114829:20200813:154856.957 current database version (mandatory/optional): 04040000/04030046
114829:20200813:154856.957 required mandatory version: 04040000
114829:20200813:154856.957 optional patches were found
114829:20200813:154856.957 starting automatic database upgrade
114829:20200813:154856.958 [Z3005] query failed: [1118] Row size too large. The maximum row size for the used table type, not counting BLOBs, is 8126. This includes storage overhead, check the manual. You have to change some columns to TEXT or BLOBs [alter table media_type add event_menu_name varchar(255) default '' not null]
114829:20200813:154856.959 database upgrade failed

错误:
zabbix [Z3005] query failed: [1118] Row size too large. The maximum row size for the used table type, not counting BLOBs, is 8126

网上查到解决的办法:
https://stackoverflow.com/questions/22637733/mysql-error-code-1118-row-size-too-large-8126-changing-some-columns-to-te/39325828

登陆mysql -u root -p

set global innodb_strict_mode=0;

问题二解决