1:停掉正在运行的zabbix服务,确保没有新数据写入数据库。

/etc/init.d/zabbix_server stop



2:备份原zabbix的数据库数据,以及相关文件。

mysqldump -h 127.0.0.1 -u zabbix -ppassword zabbix > /opt/backup/zabbix/zabbix_bak.sql
mv /usr/local/service/zabbix /usr/local/service/zabbix3.2.7
mv /usr/local/service/nginx/html/zabbix /usr/local/service/nginx/html/zabbix3.2.7


3:官网下载zabbix安装包zabbix-3.4.1.tar.gz,上传到服务器,解压,并在新的目录中编译安装新版本。

tar -zxvf zabbix-3.4.1.tar.gz
cd zabbix-3.4.1
./configure --prefix=/usr/local/service/zabbix --enable-server --enable-agent --with-mysql --disable-ipv6 --with-net-snmp --with-libcurl --with-libxml2
make install

zabbix_server 3.4.1编译时候竟然提示缺包,安装一下在make。

yum -y install libevent libevent-devel


4:替换新版本配置文件

cd /usr/local/service/
mv zabbix/etc/zabbix_server.conf zabbix/etc/zabbix_server.conf.bak
cp zabbix3.2.7/etc/zabbix_server.conf zabbix/etc/


5:替换新版本web页面

cd /usr/local/service/nginx/html
cp /root/tools/zabbix-3.4.1/frontends/php ./zabbix -R
cp zabbix3.2.7/fonts/DejaVuSans.ttf zabbix/fonts/
yes
cp zabbix3.2.7/conf/zabbix.conf.php zabbix/conf/zabbix.conf.php
cp zabbix3.2.7/share/zabbix/alertscripts/* zabbix/share/zabbix/alertscripts/
chmod 777 zabbix -R


6:打开web页面是否报错。


  如果报数据库错误,可能是新版本还没连接成功数据库。过2分钟后尝试打开web。


  看zabbix队列过长,可能是新版本未能写入数据库造成,重启zabbix_server。


至此,zabbix升级完毕。