Centos7下Zabbix3.4至Zabbix4.0的升级步骤
查看现在centos版本和zabbix版本:
cat /etc/rehat-release # 查看系统使用版本
rpm -qa | grep "zabbix" #查看zabbix安装的版本
![Centos7下Zabbix3.4至Zabbix4.0的升级步骤_centos](//dev-img.mos.moduyun.com/20231025/efb508ab-5b24-4b7b-b3d5-b8a5e4a42cce.png)
![Centos7下Zabbix3.4至Zabbix4.0的升级步骤_centos_02](//dev-img.mos.moduyun.com/20231025/fcacb768-8aee-4674-b677-13ef0fef8ad6.png)
1. 停止服务
service zabbix-server stop
service httpd stop
![Centos7下Zabbix3.4至Zabbix4.0的升级步骤_mysql_03](//dev-img.mos.moduyun.com/20231025/6ce1c7cf-c999-4850-9ceb-898c8c0de5a8.png)
2. 备份数据库, 很重要
数据库全备时间比较长且文件交大,建议压缩或者使用xtrabackup, 此处采用mysqldump, 文末介绍具体用法。
mysqldump -uzabbix -pykadmin123 --opt --skip-lock-tables --database zabbix > zabbix.sql
mysqldump -uzabbix -pykadmin123 --opt --skip-lock-tables --database zabbix | gzip > zabbix_`date +'%Y%m%d%H%M%S'`.sql.gz
![Centos7下Zabbix3.4至Zabbix4.0的升级步骤_centos_04](//dev-img.mos.moduyun.com/20231025/d2413f1d-1ac7-439f-a935-9a95c03bd43e.png)
3. 备份 zabbix 文件
mkdir /opt/zabbix-backup/ #创建一个空文件
cp /etc/zabbix/zabbix_server.conf /opt/zabbix-backup/
cp /etc/httpd/conf.d/zabbix.conf /opt/zabbix-backup/
cp -R /usr/share/zabbix/ /opt/zabbix-backup/
cp -R /usr/share/doc/zabbix-* /opt/zabbix-backup/
![Centos7下Zabbix3.4至Zabbix4.0的升级步骤_mysql_05](//dev-img.mos.moduyun.com/20231025/1c808fce-cd7d-4f5e-9efa-2d0f87491ef8.png)
4. 升级zabbix源
rpm -Uvh http://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm
![Centos7下Zabbix3.4至Zabbix4.0的升级步骤_数据库_06](//dev-img.mos.moduyun.com/20231025/3bef3273-2051-4e60-8a96-56769435e99c.png)
5. 升级zabbix
yum clean all
yum upgrade zabbix-server-mysql zabbix-web-mysql zabbix-agent
![Centos7下Zabbix3.4至Zabbix4.0的升级步骤_数据库_07](//dev-img.mos.moduyun.com/20231025/9ad2460c-26d0-47e5-9045-610c68c903ed.png)
![Centos7下Zabbix3.4至Zabbix4.0的升级步骤_mysql_08](//dev-img.mos.moduyun.com/20231025/09b376aa-ac31-4de2-a560-35249b0dedba.png)
![Centos7下Zabbix3.4至Zabbix4.0的升级步骤_mysql_09](//dev-img.mos.moduyun.com/20231025/ce1c46fe-d889-47c9-9b6a-90b4af70a7be.png)
![Centos7下Zabbix3.4至Zabbix4.0的升级步骤_mysql_10](//dev-img.mos.moduyun.com/20231025/87ceeeb6-d1ca-405d-a3a9-ebc39a66a996.png)
启动zabbix服务:
service zabbix-server start
service zabbix-agent start
service httpd start
![Centos7下Zabbix3.4至Zabbix4.0的升级步骤_数据库_11](//dev-img.mos.moduyun.com/20231025/fb22be92-aa56-42eb-b5b5-b5707d1e634d.png)
检查一下升级的日志:
tail -f /var/log/zabbix/zabbix_server.log #实时查看一下升级的记录, 由于实验使用虚拟机,所以输出不一样,但无出现报错即可。
![Centos7下Zabbix3.4至Zabbix4.0的升级步骤_数据库_12](//dev-img.mos.moduyun.com/20231025/647e9ea5-5000-4f8f-b14a-fc3029d167a6.png)
6. 升级后验证
![Centos7下Zabbix3.4至Zabbix4.0的升级步骤_数据库_13](//dev-img.mos.moduyun.com/20231025/943286cb-0aa7-4cc6-a316-7ecd4e599145.png)
![Centos7下Zabbix3.4至Zabbix4.0的升级步骤_mysql_14](//dev-img.mos.moduyun.com/20231025/872bb1a6-d650-4d06-ad5d-72b2f5644943.png)
mysqldump常用于MySQL数据库逻辑备份
1. 最简单的用法:
mysqldump -uroot -pPassword [database name]
> [dump file]
上述命令将指定数据库备份到某dump文件(转储文件)中,比如:
mysqldump -uroot -p123 test > test.dump
生成的test.dump文件中包含建表语句(生成数据库结构哦)和插入数据的insert语句。
2. --opt
如果加上--opt参数则生成的dump文件中稍有不同:
- 建表语句包含drop table if exists tableName
- insert之前包含一个锁表语句lock tables tableName write,insert之后包含unlock tables
3. 跨主机备份
使用下面的命令可以将host1上的sourceDb复制到host2的targetDb,前提是host2主机上已经创建targetDb数据库:
mysqldump --host=host1 --opt sourceDb| mysql --host=host2 -C targetDb
4. 只备份表结构
mysqldump --no-data --databases mydatabase1 mydatabase2 mydatabase3 > test.dump
将只备份表结构。--databases指示主机上要备份的数据库。如果要备份某个MySQL主机上的所有数据库可以使用--all-databases选项,如下:
mysqldump --all-databases
> test.dump
5. 从备份文件恢复数据库
mysql [database name] < [backup file name]
.......