These notes are for upgrading from Zabbix 6.4.x to Zabbix 7.0.0. All notes are grouped into:
Critical- the most critical information related to the upgrade process and the changes in Zabbix functionality
Informational- all remaining information describing the changes in Zabbix functionality
It is possible to upgrade to Zabbix 7.0.0 from versions before Zabbix 6.4.0. See the upgrade procedure section for all relevant information about upgrading from previous Zabbix versions.
See also upgrade instructions for servers in a high-availability (HA) cluster.
To complete successful Zabbix server upgrade on MySQL and MariaDB, you may require to set
GLOBAL log_bin_trust_function_creators = 1 in MySQL if binary logging is enabled, there are no superuser privileges and
log_bin_trust_function_creators = 1 is not set in MySQL configuration file.
To set the variable using the MySQL console, run:
Once the upgrade has been successfully completed,
log_bin_trust_function_creators can be disabled:
See the list of API changes in Zabbix 7.0.0.
Default value of the BufferSize configuration parameter for Zabbix agent 2 has been increased from 100 to 1000. This change does not affect installations where BufferSize is explicitly set.
Several aggregate functions have been updated. Now:
Since Zabbix 5.0.0, numeric (float) data type supports precision of approximately 15 digits and range from approximately -1.79E+308 to 1.79E+308. This is implemented by default in new installations. Whereas for upgrading existing installations that had been created before Zabbix 5.0 a database upgrade patch is applied automatically.
The patch will alter data columns of history and trends tables, which usually contain lots of data, therefore it is expected to take some time to complete. Since the exact estimate depends on server performance, database management system configuration and version, and it cannot be predicted, it is recommended to first test the patch outside the production environment, even though with MySQL 8.0 and MariaDB 10.5 configured by default the patch is known to be executed instantly for large tables due to efficient algorithm and the fact that previously the same double type was used but with limited precision, meaning that data itself does not need to be modified.
If you use Oracle database or older version of MySQL database, as well as in case of large installations, the patch execution can take a lot of time, and therefore it is recommended to update the data type manually before starting the upgrade.
Please execute the appropriate patch (SQL file) for your database; you may find these scripts in the Zabbix Git repository for:
Important! Run these scripts for the server database only.
To apply a patch:
Note that with TimescaleDB the compression support must only be turned on after applying this patch.
The wmi.get and wmi.getall used with Zabbix agent 2 now return JSON with boolean values represented as strings (for example,
"RealTimeProtectionEnabled": "True" instead of
"RealTimeProtectionEnabled": true returned previously) to match the output format of these items on Zabbix agent.
For the list of item changes that do no break compatibility, see What's new in Zabbix 7.0.0.