[comment]: # ({cef53b6f-af4f2bd3})
# 15 Passage aux valeurs numériques de plage étendue

[comment]: # ({/cef53b6f-af4f2bd3})

[comment]: # ({3066d4fa-5b80659b})
#### Aperçu

Depuis Zabbix 5.0, le type de données numérique (float) prend en charge une précision d'environ 15 chiffres et une plage allant d'environ -1.79E+308 à 1.79E+308.
L'ancien type numérique était désactivé, mais restait pris en charge. À partir de Zabbix 6.4, il a été déprécié, et depuis Zabbix 7.0, il a été entièrement supprimé.

Si votre installation n'a pas été mise à niveau pour utiliser des valeurs numériques à plage étendue, l'avertissement suivant s'affiche dans *Reports* → [*System information*](/manual/web_interface/frontend_sections/reports/status_of_zabbix) :
"Database history tables upgraded: No. Support for the old numeric type is deprecated. Please upgrade to numeric values of extended range".

Lors de la mise à niveau vers Zabbix 7.0, les bases de données suivantes sont mises à niveau **automatiquement** :

-   MySQL
-   PostgreSQL/TimescaleDB (sans compression)
-   Oracle

Cependant, pour Oracle, les anciennes versions de MySQL et les grandes installations, il est recommandé de mettre à niveau manuellement le type de données avant de passer à Zabbix 7.0.
Pour les instructions, voir [MySQL, PostgreSQL/TimescaleDB (without compression), Oracle](#mysql-postgresqltimescaledb-without-compression-oracle).

Si vous utilisez TimescaleDB avec compression, la base de données doit être mise à niveau **manuellement** avant de passer à Zabbix 7.0.
Pour les instructions, voir [TimescaleDB (with compression)](#timescaledb-with-compression).

::: noteimportant
Depuis Zabbix 7.0, la mise à niveau manuelle des tables vers des clés primaires met également à niveau les tables pour utiliser des types de données en double précision.
Pour les instructions sur la mise à niveau vers des clés primaires, voir [Database upgrade to primary keys](/manual/appendix/install/db_primary_keys).
:::

[comment]: # ({/3066d4fa-5b80659b})

[comment]: # ({b84906aa-b38f7275})
#### MySQL, PostgreSQL/TimescaleDB (sans compression), Oracle

Le correctif de mise à niveau modifie les colonnes de données des tables history et trends, qui contiennent généralement beaucoup de données ; pour cette raison, la mise à niveau peut prendre un certain temps.
L’estimation exacte ne peut pas être prédite et dépend des performances du serveur, de la configuration et de la version du système de gestion de base de données.
Il est donc recommandé de tester d’abord le correctif en dehors de l’environnement de production.
Par exemple, avec MySQL 8.0 et MariaDB 10.5 (configuration par défaut), il est connu que le correctif s’exécute instantanément pour les grandes tables grâce à un algorithme efficace et au fait qu’auparavant le même type double était utilisé, mais avec une précision limitée, ce qui signifie que les données elles-mêmes n’ont pas besoin d’être modifiées.

Pour mettre à niveau MySQL, PostgreSQL/TimescaleDB (sans compression) ou Oracle avant la mise à niveau vers Zabbix 7.0 :

1\. Arrêtez le serveur Zabbix.

2\. Sauvegardez votre base de données.

3\. Exécutez le correctif approprié (fichier SQL) pour votre base de données Zabbix 6.4 :

::: notewarning
Exécutez les scripts uniquement pour la base de données du serveur. Le proxy ne bénéficiera pas de cette mise à niveau.
:::

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

Si vous utilisez les sources, consultez le correctif [MySQL](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/database/mysql/option-patches/double.sql?at=refs%2Fheads%2Frelease%2F6.4),
[PostgreSQL/TimescaleDB](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/database/postgresql/option-patches/double.sql?at=refs%2Fheads%2Frelease%2F6.4),
ou [Oracle](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/database/oracle/option-patches/double.sql?at=refs%2Fheads%2Frelease%2F6.4) pour Zabbix 6.4 dans le dépôt GIT de Zabbix.

4\. Démarrez le serveur Zabbix.

5\. Mettez à jour ou définissez la valeur du paramètre `$DB['DOUBLE_IEEE754']` sur `true` dans `/ui/conf/zabbix.conf.php`.

[comment]: # ({/b84906aa-b38f7275})

[comment]: # ({b2e1d022-d656bdeb})
#### TimescaleDB (avec compression)

Pour mettre à niveau TimescaleDB (avec compression) avant de mettre à niveau vers Zabbix 7.0 :

1\. Désactivez la [compression TimescaleDB](/manual/appendix/install/timescaledb#timescaledb-compression) dans l'interface Zabbix.

2\. Rechargez le cache de configuration du serveur Zabbix à l'aide du [contrôle à l'exécution](/manual/concepts/server#runtime-control) : `zabbix_server -R config_cache_reload`

3\. Arrêtez le serveur Zabbix.

4\. Sauvegardez votre base de données.

5\. Exécutez le correctif approprié (fichier SQL) pour TimescaleDB :

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

Si vous utilisez les sources, consultez le correctif [PostgreSQL/TimescaleDB](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/database/postgresql/option-patches/double.sql?at=refs%2Fheads%2Frelease%2F6.4) pour Zabbix 6.4 dans le dépôt Zabbix GIT.

6\. Démarrez le serveur Zabbix.

7\. Mettez à jour ou définissez la valeur du paramètre `$DB['DOUBLE_IEEE754']` sur `true` dans `/ui/conf/zabbix.conf.php`.

[comment]: # ({/b2e1d022-d656bdeb})
