15 Jaunināšana uz paplašinātā diapazona skaitliskajām vērtībām

Pārskats

Kopš Zabbix 5.0 skaitliskais (float) datu tips atbalsta aptuveni 15 ciparu precizitāti un diapazonu no aptuveni -1.79E+308 līdz 1.79E+308. Vecais skaitliskais tips tika atspējots, taču joprojām tika atbalstīts. Sākot ar Zabbix 6.4, tas tika atzīts par novecojušu, un, sākot ar Zabbix 7.0, tas ir pilnībā noņemts.

Ja jūsu instalācija nav jaunināta, lai izmantotu paplašināta diapazona skaitliskās vērtības, sadaļā PārskatiSistēmas informācija tiek parādīts šāds brīdinājums: "Database history tables upgraded: No. Support for the old numeric type is deprecated. Please upgrade to numeric values of extended range".

Jauninot uz Zabbix 7.0, šādas datubāzes tiek jauninātas automātiski:

  • MySQL
  • PostgreSQL/TimescaleDB (bez saspiešanas)
  • Oracle

Tomēr Oracle, vecākām MySQL versijām un lielām instalācijām ir ieteicams datu tipu jaunināt manuāli pirms jaunināšanas uz Zabbix 7.0. Norādījumus skatiet sadaļā MySQL, PostgreSQL/TimescaleDB (bez saspiešanas), Oracle.

Ja tiek izmantots TimescaleDB ar saspiešanu, datubāze ir jājaunina manuāli pirms jaunināšanas uz Zabbix 7.0. Norādījumus skatiet sadaļā TimescaleDB (ar saspiešanu).

Sākot ar Zabbix 7.0, manuāla tabulu jaunināšana uz primārajām atslēgām arī jauno tabulu datu tipus uz double precision. Norādījumus par jaunināšanu uz primārajām atslēgām skatiet sadaļā Datubāzes jaunināšana uz primārajām atslēgām.

MySQL, PostgreSQL/TimescaleDB (bez saspiešanas), Oracle

Jaunināšanas ielāps maina vēstures un tendenču tabulu datu kolonnas, kurās parasti ir daudz datu; šī iemesla dēļ jaunināšanas pabeigšana var aizņemt kādu laiku. Precīzu aplēsi nevar paredzēt, un tā ir atkarīga no servera veiktspējas, datubāzes pārvaldības sistēmas konfigurācijas un versijas. Tāpēc ieteicams vispirms pārbaudīt ielāpu ārpus ražošanas vides. Piemēram, ar MySQL 8.0 un MariaDB 10.5 (noklusējuma konfigurācija) ir zināms, ka ielāps lielām tabulām tiek izpildīts acumirklī efektīva algoritma dēļ un tāpēc, ka iepriekš tika izmantots tas pats double tips, bet ar ierobežotu precizitāti, kas nozīmē, ka pašus datus nav nepieciešams modificēt.

Lai jauninātu MySQL, PostgreSQL/TimescaleDB (bez saspiešanas) vai Oracle pirms jaunināšanas uz Zabbix 7.0:

1. Apturiet Zabbix serveris.

2. Izveidojiet datubāzes rezerves kopiju.

3. Palaidiet atbilstošo ielāpu (SQL failu) savai Zabbix 6.4 datubāzei:

Palaidiet skriptus tikai servera datubāzei. Starpniekserveris no šī jauninājuma negūs labumu.

  • /usr/share/zabbix-sql-scripts/mysql/double.sql
  • /usr/share/zabbix-sql-scripts/postgresql/double.sql (for PostgreSQL/TimescaleDB)
  • /usr/share/zabbix-sql-scripts/oracle/double.sql

Ja izmantojat avotus, skatiet MySQL, PostgreSQL/TimescaleDB, vai Oracle ielāpu Zabbix 6.4 Zabbix GIT repozitorijā.

4. Startējiet Zabbix serveris.

5. Atjauniniet vai iestatiet $DB['DOUBLE_IEEE754'] parametra vērtību uz true /ui/conf/zabbix.conf.php.

TimescaleDB (ar saspiešanu)

Lai pirms atjaunināšanas uz Zabbix 7.0 atjauninātu TimescaleDB (ar saspiešanu):

1. Atspējojiet TimescaleDB saspiešanu Zabbix lietotāja saskarnē.

2. Pārlādējiet Zabbix servera konfigurācijas kešatmiņu, izmantojot izpildlaika vadību: zabbix_server -R config_cache_reload

3. Apturiet Zabbix serveri.

4. Izveidojiet datubāzes rezerves kopiju.

5. Palaidiet atbilstošo ielāpu (SQL failu) TimescaleDB:

  • /usr/share/zabbix-sql-scripts/postgresql/double.sql

Ja izmantojat avotus, skatiet PostgreSQL/TimescaleDB ielāpu Zabbix 6.4 Zabbix GIT repozitorijā.

6. Startējiet Zabbix serveri.

7. Atjauniniet vai iestatiet $DB['DOUBLE_IEEE754'] parametra vērtību uz true failā /ui/conf/zabbix.conf.php.