GLPI/SQL/Migration
Pour la migration de données GLPI.
Script de mise à jour
/* Script de mise à jour */ /* Variables */ SET @CodeAncien = 4321; SET @CodeNouveau = 1234; /* Début : glpi_users */ /* A faire en manuel */ /* UPDATE glpi_users SET id=@CodeNouveau WHERE id=@CodeAncien ;*/ /* Début : glpi_profiles_users */ UPDATE glpi_profiles_users SET users_id=@CodeNouveau WHERE users_id=@CodeAncien ; /* Début : glpi_tickets_users */ UPDATE glpi_tickets_users SET users_id=@CodeNouveau WHERE users_id=@CodeAncien ; /* Début : glpi_tickettasks */ UPDATE glpi_tickettasks SET users_id=@CodeNouveau WHERE users_id=@CodeAncien ; UPDATE glpi_tickettasks SET users_id_editor=@CodeNouveau WHERE users_id_editor=@CodeAncien ; /* Début : glpi_itilfollowups */ UPDATE glpi_itilfollowups SET users_id=@CodeNouveau WHERE users_id=@CodeAncien ; UPDATE glpi_itilfollowups SET users_id_editor=@CodeNouveau WHERE users_id_editor=@CodeAncien ; /* Début : glpi_itilsolutions */ UPDATE glpi_itilsolutions SET users_id=@CodeNouveau WHERE users_id=@CodeAncien ; /* Début : glpi_savedsearches_users */ UPDATE glpi_savedsearches_users SET users_id=@CodeNouveau WHERE users_id=@CodeAncien ; /* Fin du script */
Modification nom du serveur web
Les images visibles dans sur des tickets (description, tâche, suivi ou solution), c'est l'URL de l'image qui est stockée :
- soit c'est l'URL complète, avec le nom du serveur ; exemple
https://phpnet1/glpi/front/document.send.php...
) ; - soit c'est l'URL relative, sans le nom du serveur ; exemple
/phpnet1/front/document.send.php...
) ;
Script pour tous les tickets qui répondent au critère de recherche
SET @TexteARechercher = "phpnet1/glpi/front/"; SET @TexteARechercherRegEx = CONCAT( "(", @TexteARechercher, ")" ); SET @TexteDeRemplacement = "phpweb1/glpi/front/"; UPDATE glpi_tickets SET content = REGEXP_REPLACE(content, @TexteARechercher, @TexteDeRemplacement) WHERE id IN ( SELECT id WHERE content REGEXP @TexteARechercherRegEx ); UPDATE glpi_tickettasks SET content = REGEXP_REPLACE(content, @TexteARechercher, @TexteDeRemplacement) WHERE tickets_id IN ( SELECT tickets_id WHERE content REGEXP @TexteARechercherRegEx ); UPDATE glpi_itilfollowups SET content = REGEXP_REPLACE(content, @TexteARechercher, @TexteDeRemplacement) WHERE items_id IN ( SELECT items_id WHERE content REGEXP @TexteARechercherRegEx ); UPDATE glpi_itilsolutions SET content = REGEXP_REPLACE(content, @TexteARechercher, @TexteDeRemplacement) WHERE items_id IN ( SELECT items_id WHERE content REGEXP @TexteARechercherRegEx );
Autre
Journal
Liste d'élément du journal dont la valeur du champ "new_value" correspond à la règle qui suit l'expression régulière ([0-9]{4}).*$
, c'est-à-dire qui termine par quatre chiffres :
SELECT items_id, new_value FROM glpi_logs WHERE itemtype = "user" AND itemtype_link = "UserEmail" AND new_value REGEXP "([0-9]{4}).*$";
Fabricant
Liste des fabricants
SELECT * FROM glpi_manufacturers
Mise à zéro des fabriquant pour les fiches ordinateur
UPDATE glpi_computers SET manufacturers_id=0 WHERE manufacturers_id <> 0;