You are not logged in.
Pages: 1
Bonjour à tous,
J'ai installé le plugin FusionInventory (version 9.4+2.4), l'installation s'est terminée correctement dans GLPI, j'ai donc commencé à tester le plugin et j'ai tenté d'ajouter mon PC via l'agent.
L'installation de l'agent s'est bien passée également, et je le vois bien remonter dans Administration > FusionInventory > Agent Management, mais il n'est pas importé automatiquement dans GLPI.
J'utilise les règles d'import de base (je ne les ai pas encore modifiées, il y a peut-être quelquechose à faire de ce côté d'abord?)
Au niveau des logs de GLPI, sans sql-error.log, j'ai vu que cette erreur revient régulièrement :
[2020-06-19 15:34:41] glpisqllog.ERROR: DBmysql::query() in /var/www/html/inc/dbmysql.class.php line 188
*** MySQL query error:
SQL: INSERT INTO `glpi_plugin_fusioninventory_dblockinventorynames` (`value`) VALUES ('pf1ycnjv')
Error: The table does not comply with the requirements by an external plugin.
Backtrace :
plugins/fusioninventory/inc/dblock.class.php:90
...ory/inc/inventorycomputerinventory.class.php:98 PluginFusioninventoryDBLock->setLock()
...fusioninventory/inc/communication.class.php:227 PluginFusioninventoryInventoryComputerInventory->import()
...fusioninventory/inc/communication.class.php:461 PluginFusioninventoryCommunication->import()
plugins/fusioninventory/front/communication.php:93 PluginFusioninventoryCommunication->handleOCSCommunication()
plugins/fusioninventory/index.php:59 include_once()
{"user":"19@h902d1glp01t.ad.ctg.lu","mem_usage":"0.102\", 3.06Mio)"}
Est-ce que quelqu'un aurait déjà été confronté à ce problème?
Merci d'avance,
Phil
GLPI 9.4.6 (additionalfields 1.10.3 + fusioninventory 9.4+2.4 + datainjection 2.7.1 + printtopdf 1.6.0) - PHP 7.4 - MySQL 8.0 Community InnoDB cluster (3 nodes - single primary) - All on CentOS 8
Offline
Bonjour,
Auriez-vous activé la réplication de Bdd dans mysql ?
Mes recherches amènent toujours à cela autour de ce problème.
Contexte : GLPI 9.4.3/FusionInventory 9.4+1.1 / Agent FI 2.5.1
Offline
Bonjour,
Merci pour votre réponse
Mon premier post manquait d'infos, mais oui effectivement j'ai de la réplication SQL, plus précisément un cluster InnoDB.
Notre installation de GLPI est faite de cette façon :
- Cluster MySQL 8.0 InnoDB (3 nodes, single primary) avec connection des instances GLPI à la DB par le composant MySQLRouter qui est installé sur chaque serveur GLPI
- Serveur NFS (qui deviendra redondant dans le futur) pour centraliser les fichiers, sessions etc de GLPI comme précisé dans la doc officielle si on veut installer plusieurs instances
- 1 instance de test GLPI (une autre instance sera installée et pointera vers la même DB via le composant MySQLRouter)
Est-ce que le fait d'avoir une réplication SQL pose problème au niveau de Fusion Inventory?
GLPI 9.4.6 (additionalfields 1.10.3 + fusioninventory 9.4+2.4 + datainjection 2.7.1 + printtopdf 1.6.0) - PHP 7.4 - MySQL 8.0 Community InnoDB cluster (3 nodes - single primary) - All on CentOS 8
Offline
Bonjour,
D'après la page du manuel mysql , il faut impérativement que ces conditions soient réunies :
"Primary Keys. Every table that is to be replicated by the group must have a defined primary key, or primary key equivalent where the equivalent is a non-null unique key. Such keys are required as a unique identifier for every row within a table, enabling the system to determine which transactions conflict by identifying exactly which rows each transaction has modified. "
Vérifiez sir cette table possède bien un index primaire unique et ses colonnes not null
Contexte : GLPI 9.4.3/FusionInventory 9.4+1.1 / Agent FI 2.5.1
Offline
Bonjour,
Merci pour votre réponse.
J'ai vérifié en faisant un SHOW CREATE TABLE, voici ce que j'obtiens pour la table glpi_plugin_fusioninventory_dblockinventorynames :
mysql> SHOW CREATE TABLE glpi_uat.glpi_plugin_fusioninventory_dblockinventorynames;
+--------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table | Create Table |
+--------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| glpi_plugin_fusioninventory_dblockinventorynames | CREATE TABLE `glpi_plugin_fusioninventory_dblockinventorynames` (
`value` varchar(100) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
`date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`value`),
UNIQUE KEY `value` (`value`)
) ENGINE=MEMORY DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci |
+--------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)
On a bien une primary key et une unique key qui correspondent à la colonne value, et cette dernière est bien not null
GLPI 9.4.6 (additionalfields 1.10.3 + fusioninventory 9.4+2.4 + datainjection 2.7.1 + printtopdf 1.6.0) - PHP 7.4 - MySQL 8.0 Community InnoDB cluster (3 nodes - single primary) - All on CentOS 8
Offline
Pages: 1