zabbix 5.4 升级 7.4

2025年8月26日 0 条评论 4 次阅读 0 人点赞

zabbix 从放弃到入门 一晃已经三年多了,这段时间由于centos7不再更新,转投debian,又从debian11到debian12,因为debian12已经不支持zabbix6.0以下的 zabbix-proxy,所以不得不考虑将zabbix-server5.4升级一下

升级的大概流程:

1. 按照原安装步骤安装新的zabbix系列版本
2. 将原数据库内容导出,修改为新版本格式之后导入新数据库
3. 启动zabbix-server,将zabbix-agent指向原zabbix-server的改为新的地址

安装需求,详见官方说明 ,这里采用了 lnmp.org 使用 

wget https://soft.lnmp.com/lnmp/lnmp2.2.tar.gz -O lnmp2.2.tar.gz
 && tar zxf lnmp2.2.tar.gz && cd lnmp2.2 && 
./install.sh lnmp db

安装了 mysql8.4

在操作升级之前有几个需要注意的地方:

1. 将原数据库内容导出(排除了 history 和 trend 数据,但仍导出表结构)

mysqldump -uroot -p --databases 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_dump.sql
mysqldump -d zabbix -uroot -p --tables history history_log history_str \
history_text history_uint trends trends_uint > zabbix_tables.sql

修改 sql 文件中所有关于创建表部分的内容

ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8_bin;

使用sed或在vim中批量修改为

ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_bin;

2. 操作完数据库导出、导入,给新数据创建zabbix-server 使用的账户,并给权限

3. 在启动 zabbix-server 服务进行数据库自动升级之前,在 mysql 中关闭安全设置:

SET GLOBAL log_bin_trust_function_creators = 1;

在升级完后再打开:

SET GLOBAL log_bin_trust_function_creators = 0;

4. 启动新版 zabbix-server ,如果你先安装了,那么停止掉 zabbix-server 再操作数据库,因为启动 zabbix-server 的时候,会对数据库结构和内容进行自动升级,可以在 zabbix-server.log 中看到内容

参考 https://grandage.cn/blog_detail?id=66 

Sevenfal

这个人太懒什么东西都没留下

文章评论(0)