You are not logged in.

Announcement

 Téléchargez la dernière version stable de GLPI      -     Et vous, que pouvez vous faire pour le projet GLPI ? :  Contribuer
 Download last stable version of GLPI                      -     What can you do for GLPI ? :  Contribute

#1 2023-05-01 23:52:22

piclauma
Member
Registered: 2021-11-29
Posts: 21

[GLPI 10.0.7] Problème d'intégrité BD pour la version 10.0.6

Bonjour à tous,

Je 'essaye de migrer la version 10.0.6 en version 10.0.7, et lors de la mise à jour, il y a un soucis d'intégrité de la base de données.
En faisant un check de l'intégrité de la bd, voici ce j'obtiens (alors que rien n'a été modifié à la main):

# php bin/console database:check_schema_integrity
Le schéma diffère pour la table "glpi_businesscriticities".
--- Schéma de base de données attendu
+++ Schéma de base de données actuel
@@ @@
   KEY `date_mod` (`date_mod`),
   KEY `entities_id` (`entities_id`),
   KEY `is_recursive` (`is_recursive`),
+  KEY `level` (`level`),
   KEY `name` (`name`)
 )
Le schéma diffère pour la table "glpi_contracts".
--- Schéma de base de données attendu
+++ Schéma de base de données actuel
@@ @@
   `is_deleted` tinyint NOT NULL DEFAULT 0,
   `is_recursive` tinyint NOT NULL DEFAULT 0,
   `is_template` tinyint NOT NULL DEFAULT 0,
+  `locations_id` int NOT NULL DEFAULT 0,
   `max_links_allowed` int NOT NULL DEFAULT 0,
   `name` varchar(255),
   `notice` int NOT NULL DEFAULT 0,
@@ @@
   KEY `is_deleted` (`is_deleted`),
   KEY `is_recursive` (`is_recursive`),
   KEY `is_template` (`is_template`),
+  KEY `locations_id` (`locations_id`),
   KEY `name` (`name`),
   KEY `states_id` (`states_id`),
   KEY `use_saturday` (`use_saturday`),
   KEY `use_sunday` (`use_sunday`)
 )
Le schéma diffère pour la table "glpi_items_devicecameras_imageformats".
--- Schéma de base de données attendu
+++ Schéma de base de données actuel
@@ @@
   `imageformats_id` int NOT NULL DEFAULT 0,
   `is_deleted` tinyint NOT NULL DEFAULT 0,
   `is_dynamic` tinyint NOT NULL DEFAULT 0,
-  `item_devicecameras_id` int NOT NULL DEFAULT 0,
+  `items_devicecameras_id` int NOT NULL DEFAULT 0,
   PRIMARY KEY (`id`),
   KEY `imageformats_id` (`imageformats_id`),
   KEY `is_deleted` (`is_deleted`),
   KEY `is_dynamic` (`is_dynamic`),
-  KEY `item_devicecameras_id` (`item_devicecameras_id`)
+  KEY `items_devicecameras_id` (`items_devicecameras_id`)
 )
Le schéma diffère pour la table "glpi_items_devicecameras_imageresolutions".
--- Schéma de base de données attendu
+++ Schéma de base de données actuel
@@ @@
   `imageresolutions_id` int NOT NULL DEFAULT 0,
   `is_deleted` tinyint NOT NULL DEFAULT 0,
   `is_dynamic` tinyint NOT NULL DEFAULT 0,
-  `item_devicecameras_id` int NOT NULL DEFAULT 0,
+  `items_devicecameras_id` int NOT NULL DEFAULT 0,
   PRIMARY KEY (`id`),
   KEY `imageresolutions_id` (`imageresolutions_id`),
   KEY `is_deleted` (`is_deleted`),
   KEY `is_dynamic` (`is_dynamic`),
-  KEY `item_devicecameras_id` (`item_devicecameras_id`)
+  KEY `items_devicecameras_id` (`items_devicecameras_id`)
 )
Le schéma diffère pour la table "glpi_documentcategories".
--- Schéma de base de données attendu
+++ Schéma de base de données actuel
@@ @@
   UNIQUE KEY `unicity` (`documentcategories_id`,`name`),
   KEY `date_creation` (`date_creation`),
   KEY `date_mod` (`date_mod`),
+  KEY `level` (`level`),
   KEY `name` (`name`)
 )
Le schéma diffère pour la table "glpi_entities".
--- Schéma de base de données attendu
+++ Schéma de base de données actuel
@@ @@
   KEY `date_creation` (`date_creation`),
   KEY `date_mod` (`date_mod`),
   KEY `entities_id_software` (`entities_id_software`),
+  KEY `level` (`level`),
   KEY `name` (`name`),
   KEY `problemtemplates_id` (`problemtemplates_id`),
   KEY `tickettemplates_id` (`tickettemplates_id`),
   KEY `transfers_id` (`transfers_id`)
 )
Le schéma diffère pour la table "glpi_groups".
--- Schéma de base de données attendu
+++ Schéma de base de données actuel
@@ @@
   KEY `ldap_field` (`ldap_field`),
   KEY `ldap_group_dn` (`ldap_group_dn`(200)),
   KEY `ldap_value` (`ldap_value`(200)),
+  KEY `level` (`level`),
   KEY `name` (`name`)
 )
Le schéma diffère pour la table "glpi_ipnetworks".
--- Schéma de base de données attendu
+++ Schéma de base de données actuel
@@ @@
   KEY `gateway` (`gateway_0`,`gateway_1`,`gateway_2`,`gateway_3`),
   KEY `ipnetworks_id` (`ipnetworks_id`),
   KEY `is_recursive` (`is_recursive`),
+  KEY `level` (`level`),
   KEY `name` (`name`),
   KEY `netmask` (`netmask_0`,`netmask_1`,`netmask_2`,`netmask_3`),
   KEY `network_definition` (`entities_id`,`address`,`netmask`)
 )
Le schéma diffère pour la table "glpi_itilcategories".
--- Schéma de base de données attendu
+++ Schéma de base de données actuel
@@ @@
   KEY `is_request` (`is_request`),
   KEY `itilcategories_id` (`itilcategories_id`),
   KEY `knowbaseitemcategories_id` (`knowbaseitemcategories_id`),
+  KEY `level` (`level`),
   KEY `name` (`name`),
   KEY `problemtemplates_id` (`problemtemplates_id`),
   KEY `tickettemplates_id_demand` (`tickettemplates_id_demand`),
Le schéma diffère pour la table "glpi_knowbaseitemcategories".
--- Schéma de base de données attendu
+++ Schéma de base de données actuel
@@ @@
   KEY `date_mod` (`date_mod`),
   KEY `is_recursive` (`is_recursive`),
   KEY `knowbaseitemcategories_id` (`knowbaseitemcategories_id`),
+  KEY `level` (`level`),
   KEY `name` (`name`)
 )
Le schéma diffère pour la table "glpi_locations".
--- Schéma de base de données attendu
+++ Schéma de base de données actuel
@@ @@
   KEY `date_creation` (`date_creation`),
   KEY `date_mod` (`date_mod`),
   KEY `is_recursive` (`is_recursive`),
+  KEY `level` (`level`),
   KEY `locations_id` (`locations_id`),
   KEY `name` (`name`)
 )
Le schéma diffère pour la table "glpi_softwarecategories".
--- Schéma de base de données attendu
+++ Schéma de base de données actuel
@@ @@
   `softwarecategories_id` int NOT NULL DEFAULT 0,
   `sons_cache` text,
   PRIMARY KEY (`id`),
+  KEY `level` (`level`),
   KEY `name` (`name`),
   KEY `softwarecategories_id` (`softwarecategories_id`)
 )
Le schéma diffère pour la table "glpi_softwarelicenses".
--- Schéma de base de données attendu
+++ Schéma de base de données actuel
@@ @@
 CREATE TABLE `glpi_softwarelicenses` (
   `id` int NOT NULL AUTO_INCREMENT,
   `allow_overquota` tinyint NOT NULL DEFAULT 0,
+  `ancestors_cache` text,
   `comment` text,
   `completename` text,
   `contact_num` varchar(255),
@@ @@
   `softwares_id` int NOT NULL DEFAULT 0,
   `softwareversions_id_buy` int NOT NULL DEFAULT 0,
   `softwareversions_id_use` int NOT NULL DEFAULT 0,
+  `sons_cache` text,
   `states_id` int NOT NULL DEFAULT 0,
   `template_name` varchar(255),
   `users_id_tech` int NOT NULL DEFAULT 0,
@@ @@
   KEY `is_helpdesk_visible` (`is_helpdesk_visible`),
   KEY `is_recursive` (`is_recursive`),
   KEY `is_template` (`is_template`),
+  KEY `level` (`level`),
   KEY `locations_id` (`locations_id`),
   KEY `manufacturers_id` (`manufacturers_id`),
   KEY `name` (`name`),
Le schéma diffère pour la table "glpi_softwarelicensetypes".
--- Schéma de base de données attendu
+++ Schéma de base de données actuel
@@ @@
   KEY `date_mod` (`date_mod`),
   KEY `entities_id` (`entities_id`),
   KEY `is_recursive` (`is_recursive`),
+  KEY `level` (`level`),
   KEY `name` (`name`),
   KEY `softwarelicensetypes_id` (`softwarelicensetypes_id`)
 )
Le schéma diffère pour la table "glpi_states".
--- Schéma de base de données attendu
+++ Schéma de base de données actuel
@@ @@
   KEY `is_visible_rack` (`is_visible_rack`),
   KEY `is_visible_softwarelicense` (`is_visible_softwarelicense`),
   KEY `is_visible_softwareversion` (`is_visible_softwareversion`),
+  KEY `level` (`level`),
   KEY `name` (`name`)
 )
Le schéma diffère pour la table "glpi_taskcategories".
--- Schéma de base de données attendu
+++ Schéma de base de données actuel
@@ @@
   KEY `is_helpdeskvisible` (`is_helpdeskvisible`),
   KEY `is_recursive` (`is_recursive`),
   KEY `knowbaseitemcategories_id` (`knowbaseitemcategories_id`),
+  KEY `level` (`level`),
   KEY `name` (`name`),
   KEY `taskcategories_id` (`taskcategories_id`)
 )
Le schéma diffère pour la table "glpi_tickets".
--- Schéma de base de données attendu
+++ Schéma de base de données actuel
@@ @@
   `itilcategories_id` int NOT NULL DEFAULT 0,
   `locations_id` int NOT NULL DEFAULT 0,
   `name` varchar(255),
+  `ola_tto_begin_date` datetime,
   `ola_ttr_begin_date` datetime,
   `ola_waiting_duration` int NOT NULL DEFAULT 0,
   `olalevels_id_ttr` int NOT NULL DEFAULT 0,
Le schéma diffère pour la table "glpi_domains_items".
--- Schéma de base de données attendu
+++ Schéma de base de données actuel
@@ @@
   `id` int NOT NULL AUTO_INCREMENT,
   `domainrelations_id` int NOT NULL DEFAULT 0,
   `domains_id` int NOT NULL DEFAULT 0,
+  `is_deleted` tinyint NOT NULL DEFAULT 0,
+  `is_dynamic` tinyint NOT NULL DEFAULT 0,
   `items_id` int NOT NULL DEFAULT 0,
   `itemtype` varchar(100) NOT NULL,
   PRIMARY KEY (`id`),
   UNIQUE KEY `unicity` (`domains_id`,`itemtype`,`items_id`),
   KEY `domainrelations_id` (`domainrelations_id`),
+  KEY `is_deleted` (`is_deleted`),
+  KEY `is_dynamic` (`is_dynamic`),
   KEY `item` (`itemtype`,`items_id`)
 )
Le schéma diffère pour la table "glpi_unmanageds".
--- Schéma de base de données attendu
+++ Schéma de base de données actuel
@@ @@
   `contact` varchar(255),
   `date_creation` datetime,
   `date_mod` datetime,
-  `domains_id` int NOT NULL DEFAULT 0,
   `entities_id` int NOT NULL DEFAULT 0,
   `groups_id_tech` int NOT NULL DEFAULT 0,
   `groups_id` int NOT NULL DEFAULT 0,
@@ @@
   `snmpcredentials_id` int NOT NULL DEFAULT 0,
   `states_id` int NOT NULL DEFAULT 0,
   `sysdescr` text,
+  `users_id_tech` int NOT NULL DEFAULT 0,
   `users_id` int NOT NULL DEFAULT 0,
   PRIMARY KEY (`id`),
   KEY `agents_id` (`agents_id`),
@@ @@
   KEY `autoupdatesystems_id` (`autoupdatesystems_id`),
   KEY `date_creation` (`date_creation`),
   KEY `date_mod` (`date_mod`),
-  KEY `domains_id` (`domains_id`),
   KEY `entities_id` (`entities_id`),
   KEY `groups_id_tech` (`groups_id_tech`),
   KEY `groups_id` (`groups_id`),
@@ @@
   KEY `serial` (`serial`),
   KEY `snmpcredentials_id` (`snmpcredentials_id`),
   KEY `states_id` (`states_id`),
+  KEY `users_id_tech` (`users_id_tech`),
   KEY `users_id` (`users_id`)
 )

Du coup, j'ai refait une maquette from scratch avec uniquement GLPI 10.0.6 et les plugins utilisés:

  • Account : v3.0.3

  • Fields : v1.20.2

  • Manage Entities : v4.0.3

  • Manufactures Imports : v3.0.5

  • MRporting : v1.8.2

  • News : v1.10.6

  • More Reports : v1.16.0

Puis une mise à jour en GLPI 10.0.7, et le soucis est identique, une idée d'où cela pourrait venir?

Par avance merci

Offline

#2 2023-05-02 15:26:24

cconard96
Moderator
Registered: 2018-07-31
Posts: 2,813
Website

Re: [GLPI 10.0.7] Problème d'intégrité BD pour la version 10.0.6

Bonjour,

Les problèmes proviennent de mises à jour précédentes qui ne se sont pas terminées correctement, soit à cause d'un bogue, soit d'un autre problème.

Si vous vérifiez l'intégrité du schéma avant de tenter la mise à jour 10.0.7, vous devriez rencontrer les mêmes problèmes. Nous n'avons ajouté que récemment la commande pour vérifier le schéma de la base de données, de sorte que certaines personnes ont des problèmes avec les anciennes mises à jour de version.

Les colonnes/index manquants devront être ajoutés manuellement et dans certains cas, il semble que les colonnes doivent être renommées.

Quelques-uns des changements nécessaires pour vous mettre sur la bonne voie :

glpi_businesscriticities manque la colonne "level".

glpi_contracts manque la colonne et l'index "locations_id".

glpi_items_devicecameras_imageformats a besoin de la colonne "item_devicecameras_id" renommée en "items_devicecameras_id" et le même changement de nom doit être fait pour l'index.


GLPI Collaborator and Plugin Developer.
My non-English comments are automated translations. Sorry for any confusion that causes.
Mes commentaires non anglais sont des traductions automatiques. Désolé pour toute confusion qui cause.
Mis comentarios que no están en inglés son traducciones automáticas. Perdón por cualquier confusión que cause.

Offline

#3 2023-05-02 18:44:43

piclauma
Member
Registered: 2021-11-29
Posts: 21

Re: [GLPI 10.0.7] Problème d'intégrité BD pour la version 10.0.6

Un grand merci pour ce retour rapide
C'était simplement cela effectivement

Offline

Board footer

Powered by FluxBB