zabbix3.0出来了一段时间了,最近忍不住把公司原来的2.4版本升级到了3.0。zabbix升级其实很简单,基本步骤为:备份->重新安装新版本。接下来简单写下这次升级的操作和问题
一、停止服务
停止zabbix服务
/etc/init.d/zabbix_server stop /etc/init.d/zabbix_agent stop
二、备份
1、备份数据库
备份数据库有两种方法,一种是直接备份整个数据库目录,一种是用mysqldump备份数据
mysqldump -u root -p***** --opt --skip-lock-tables --flush-logs --database zabbix > zabbix.sql
2、备份zabbix文件
直接备份web路径下的zabbix目录
mv /home/wwwroot/zabbix /home/wwwroot/zabbix_bak
三、重新安装新版本
1、下载zabbix3.0版本,解压安装。参考之前写的在lnmp环境下编译安装zabbix
四、重新部署web
1、复制zabbixphp源码到web路径下
cp -r frontends/php /home/wwwroot/zabbix
2、将原php源代码目录下的配置文件拷到新目录下
cp /home/wwwroot/zabbix_bak/conf/zabbix.conf.php /home/wwwroot/zabbix/conf/zabbix.conf.php
3、修改权限
chown -R www:www /home/wwwroot/zabbix
五、启动zabbix服务
/etc/init.d/zabbix_server start /etc/init.d/zabbix_agent start
启动完成后,能正常打开zabbix链接即升级成功。
FAQ:
1、升级完成后,页面不显示,提示http 500错误
首先检查php是否正常,可以运行个php的探针,显示正常。倒腾了很久,后面查看官方文档发现zabbix3.0的版本php最少需要5.4版本;问题找到,于是就赶紧升级了php。
2、MySQL错误 "Specified key was too long; max key length is 1000 bytes"
在zabbix3.0升级到zabbix3.2时,在网站首页出现错误信息
“8673:20161117:104750.259 current database version (mandatory/optional): 03017000/03017000
8673:20161117:104750.259 required mandatory version: 03020000”
查看zabbix_log发现失败提示"Specified key was too long; max key length is 1000 bytes (create index zabbix problem_tag_2 on zabbix(tag,value))",原因是problem_tag表中的tag和value字段长度超过1000bytes,于是上数据库查这两个字段的长度,两个分别都是varchar(255)。长度计算公式是(255 + 255) * 2 = 1020 > 1000,所以会报错误。那么只要把这两个字段的长度改成varchar(100)即可。

您可以选择一种方式赞助本站
支付宝扫一扫赞助
微信钱包扫描赞助
赏