You are not logged in.
Bonjour GLPI 9.5.6 en production sur un serveur W2019 avec xampp : OK
Clone de ma VM pour faire des tests de migration avant la PROD
Passage en 9.5.7 : OK
Passage en 10 : J'ai l'écran suivant
Mise à jour
Connexion à la base de données réussie
La version de la base de données semble correcte (10.4.24) - Parfait !
Mise à jour en 10.0.0
Rename "DeviceMotherBoardModel" itemtype to "DeviceMotherboardModel" in all tables (1 seconde)
GLPI cache has been changed and will not use anymore APCu or Wincache extensions. Use "php bin/console cache:configure" command to configure cache system.
Rename "DeviceMotherBoardModel" itemtype to "DeviceMotherboardModel"
SQL Error "1062": Duplicate entry '0-MAIRIE' for key 'unicity' in query "UPDATE `glpi_entities` SET `entities_id` = '0' WHERE `id` = '0'"
- Erreur durant l'éxecution de la requête : UPDATE `glpi_entities` SET `entities_id` = '0' WHERE `id` = '0'
- L'erreur est Duplicate entry '0-MAIRIE' for key 'unicity'
En fouillant un peu sur le net avec le code erreur SQL, j'ai pu trouver qu'il fallait augmenter la valeur de max_input_vars dans le php.ini. Chose faite (5000), mais l'erreur persiste (j'ai même testé avec 50000).
Quelqu'un pourrait-il m'aider svp ?
Merci d'avance.
FredB30
N.B. : Le système avant la MAJ :
GLPI 9.5.6 (/glpi => C:\xampp\htdocs\glpi)
Installation mode: TARBALL
Server
Operating system: Windows NT VAUDMZ65 10.0 build 17763 (Windows Server 2016) AMD64
PHP 7.3.3 apache2handler (Core, PDO, Phar, Reflection, SPL, SimpleXML, Zend OPcache, apache2handler, apcu, bcmath, bz2,
calendar, ctype, curl, date, dom, exif, fileinfo, filter, ftp, gd, gettext, hash, iconv, imap, intl, json, ldap, libxml,
mbstring, mysqli, mysqlnd, openssl, pcre, pdo_mysql, pdo_sqlite, readline, session, standard, tokenizer, wddx, xml, xmlreader,
xmlrpc, xmlwriter, zip, zlib)
Setup: max_execution_time="600" memory_limit="128M" post_max_size="20M" safe_mode="" session.save_handler="files"
upload_max_filesize="20M"
Software: Apache/2.4.52 (Win64) OpenSSL/1.1.1m PHP/7.3.3 (Apache/2.4.52 (Win64) OpenSSL/1.1.1m PHP/7.3.3 Server at
informatique.vauvert.com Port 8888)
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36
Server Software: mariadb.org binary distribution
Server Version: 10.4.22-MariaDB
Server SQL Mode:
Parameters: GLPI@localhost/glpi
Host info: localhost via TCP/IP
PHP version is at least 7.2.0 - Perfect!PHP version is at least 7.2.0 - Perfect!
Sessions support is available - Perfect!Sessions support is available - Perfect!
Allocated memory > 64 Mio - Perfect!Allocated memory > 64 Mio - Perfect!
mysqli extension is installedmysqli extension is installed
ctype extension is installedctype extension is installed
fileinfo extension is installedfileinfo extension is installed
json extension is installedjson extension is installed
mbstring extension is installedmbstring extension is installed
iconv extension is installediconv extension is installed
zlib extension is installedzlib extension is installed
curl extension is installedcurl extension is installed
gd extension is installedgd extension is installed
simplexml extension is installedsimplexml extension is installed
intl extension is installedintl extension is installed
ldap extension is installedldap extension is installed
apcu extension is installedapcu extension is installed
Zend OPcache extension is installedZend OPcache extension is installed
xmlrpc extension is installedxmlrpc extension is installed
exif extension is installedexif extension is installed
zip extension is installedzip extension is installed
bz2 extension is installedbz2 extension is installed
sodium extension is not presentsodium extension is not present
Database version seems correct (10.4.22) - Perfect!Database version seems correct (10.4.22) - Perfect!
Timezones seems loaded in databaseTimezones seems loaded in database
The log file has been created successfully.The log file has been created successfully.
Write access to C:\xampp\htdocs\glpi/files/_cache has been validated.Write access to C:\xampp\htdocs\glpi/files/_cache has been validated.
Write access to C:\xampp\htdocs\glpi/config has been validated.Write access to C:\xampp\htdocs\glpi/config has been validated.
Write access to C:\xampp\htdocs\glpi/files/_cron has been validated.Write access to C:\xampp\htdocs\glpi/files/_cron has been validated.
Write access to C:\xampp\htdocs\glpi/files has been validated.Write access to C:\xampp\htdocs\glpi/files has been validated.
Write access to C:\xampp\htdocs\glpi/files/_dumps has been validated.Write access to C:\xampp\htdocs\glpi/files/_dumps has been validated.
Write access to C:\xampp\htdocs\glpi/files/_graphs has been validated.Write access to C:\xampp\htdocs\glpi/files/_graphs has been validated.
Write access to C:\xampp\htdocs\glpi/files/_lock has been validated.Write access to C:\xampp\htdocs\glpi/files/_lock has been validated.
Write access to C:\xampp\htdocs\glpi/files/_pictures has been validated.Write access to C:\xampp\htdocs\glpi/files/_pictures has been validated.
Write access to C:\xampp\htdocs\glpi/files/_plugins has been validated.Write access to C:\xampp\htdocs\glpi/files/_plugins has been validated.
Write access to C:\xampp\htdocs\glpi/files/_rss has been validated.Write access to C:\xampp\htdocs\glpi/files/_rss has been validated.
Write access to C:\xampp\htdocs\glpi/files/_sessions has been validated.Write access to C:\xampp\htdocs\glpi/files/_sessions has been validated.
Write access to C:\xampp\htdocs\glpi/files/_tmp has been validated.Write access to C:\xampp\htdocs\glpi/files/_tmp has been validated.
Write access to C:\xampp\htdocs\glpi/files/_uploads has been validated.Write access to C:\xampp\htdocs\glpi/files/_uploads has been validated.
Write access to C:\xampp\htdocs\glpi/marketplace has been validated.Write access to C:\xampp\htdocs\glpi/marketplace has been validated.
Web access to the files directory should not be allowed but this cannot be checked automatically on this instance. Make sure access to error log file (/glpi/files/_log/php-errors.log) is forbidden; otherwise review .htaccess file and web server configuration.Web access to the files directory should not be allowed but this cannot be checked automatically on this instance.
Make sure access to error log file (/glpi/files/_log/php-errors.log) is forbidden; otherwise review .htaccess file and web server configuration.
GLPI constants
GLPI_ROOT: C:\xampp\htdocs\glpi
GLPI_CONFIG_DIR: C:\xampp\htdocs\glpi/config
GLPI_VAR_DIR: C:\xampp\htdocs\glpi/files
GLPI_MARKETPLACE_DIR: C:\xampp\htdocs\glpi/marketplace
GLPI_USE_CSRF_CHECK: 1
GLPI_CSRF_EXPIRES: 7200
GLPI_CSRF_MAX_TOKENS: 100
GLPI_USE_IDOR_CHECK: 1
GLPI_IDOR_EXPIRES: 7200
GLPI_ALLOW_IFRAME_IN_RICH_TEXT:
GLPI_TELEMETRY_URI: https://telemetry.glpi-project.org
GLPI_INSTALL_MODE: TARBALL
GLPI_NETWORK_MAIL: glpi@teclib.com
GLPI_NETWORK_SERVICES: https://services.glpi-network.com
GLPI_MARKETPLACE_PRERELEASES:
GLPI_MARKETPLACE_ALLOW_OVERRIDE: 1
GLPI_MARKETPLACE_MANUAL_DOWNLOADS: 1
GLPI_USER_AGENT_EXTRA_COMMENTS:
GLPI_AJAX_DASHBOARD: 1
GLPI_CALDAV_IMPORT_STATE: 0
GLPI_DEMO_MODE: 0
GLPI_FORCE_EMPTY_SQL_MODE: 1
GLPI_DOC_DIR: C:\xampp\htdocs\glpi/files
GLPI_CACHE_DIR: C:\xampp\htdocs\glpi/files/_cache
GLPI_CRON_DIR: C:\xampp\htdocs\glpi/files/_cron
GLPI_DUMP_DIR: C:\xampp\htdocs\glpi/files/_dumps
GLPI_GRAPH_DIR: C:\xampp\htdocs\glpi/files/_graphs
GLPI_LOCAL_I18N_DIR: C:\xampp\htdocs\glpi/files/_locales
GLPI_LOCK_DIR: C:\xampp\htdocs\glpi/files/_lock
GLPI_LOG_DIR: C:\xampp\htdocs\glpi/files/_log
GLPI_PICTURE_DIR: C:\xampp\htdocs\glpi/files/_pictures
GLPI_PLUGIN_DOC_DIR: C:\xampp\htdocs\glpi/files/_plugins
GLPI_RSS_DIR: C:\xampp\htdocs\glpi/files/_rss
GLPI_SESSION_DIR: C:\xampp\htdocs\glpi/files/_sessions
GLPI_TMP_DIR: C:\xampp\htdocs\glpi/files/_tmp
GLPI_UPLOAD_DIR: C:\xampp\htdocs\glpi/files/_uploads
GLPI_NETWORK_REGISTRATION_API_URL: https://services.glpi-network.com/api/registration/
GLPI_MARKETPLACE_PLUGINS_API_URI: https://services.glpi-network.com/api/glpi-plugins/
GLPI_I18N_DIR: C:\xampp\htdocs\glpi/locales
GLPI_VERSION: 9.5.6
GLPI_SCHEMA_VERSION: 9.5.6
GLPI_MIN_PHP: 7.2.0
GLPI_YEAR: 2021
Libraries
htmlawed/htmlawed version 1.2.5 in (C:\xampp\htdocs\glpi\vendor\htmlawed\htmlawed)
phpmailer/phpmailer version 6.1.6 in (C:\xampp\htdocs\glpi\vendor\phpmailer\phpmailer\src)
simplepie/simplepie version 1.5.6 in (C:\xampp\htdocs\glpi\vendor\simplepie\simplepie\library)
tecnickcom/tcpdf version 6.3.5 in (C:\xampp\htdocs\glpi\vendor\tecnickcom\tcpdf)
michelf/php-markdown in (C:\xampp\htdocs\glpi\vendor\michelf\php-markdown\Michelf)
true/punycode in (C:\xampp\htdocs\glpi\vendor\true\punycode\src)
iamcal/lib_autolink in (C:\xampp\htdocs\glpi\vendor\iamcal\lib_autolink)
sabre/dav in (C:\xampp\htdocs\glpi\vendor\sabre\dav\lib\DAV)
sabre/http in (C:\xampp\htdocs\glpi\vendor\sabre\http\lib)
sabre/uri in (C:\xampp\htdocs\glpi\vendor\sabre\uri\lib)
sabre/vobject in (C:\xampp\htdocs\glpi\vendor\sabre\vobject\lib)
laminas/laminas-cache in (C:\xampp\htdocs\glpi\vendor\laminas\laminas-cache\src)
laminas/laminas-i18n in (C:\xampp\htdocs\glpi\vendor\laminas\laminas-i18n\src)
laminas/laminas-serializer in (C:\xampp\htdocs\glpi\vendor\laminas\laminas-serializer\src)
monolog/monolog in (C:\xampp\htdocs\glpi\vendor\monolog\monolog\src\Monolog)
sebastian/diff in (C:\xampp\htdocs\glpi\vendor\sebastian\diff\src)
elvanto/litemoji in (C:\xampp\htdocs\glpi\vendor\elvanto\litemoji\src)
symfony/console in (C:\xampp\htdocs\glpi\vendor\symfony\console)
scssphp/scssphp in (C:\xampp\htdocs\glpi\vendor\scssphp\scssphp\src)
laminas/laminas-mail in (C:\xampp\htdocs\glpi\vendor\laminas\laminas-mail\src\Protocol)
laminas/laminas-mime in (C:\xampp\htdocs\glpi\vendor\laminas\laminas-mime\src)
rlanvin/php-rrule in (C:\xampp\htdocs\glpi\vendor\rlanvin\php-rrule\src)
blueimp/jquery-file-upload in (C:\xampp\htdocs\glpi\vendor\blueimp\jquery-file-upload\server\php)
ramsey/uuid in (C:\xampp\htdocs\glpi\vendor\ramsey\uuid\src)
psr/log in (C:\xampp\htdocs\glpi\vendor\psr\log\Psr\Log)
psr/simple-cache in (C:\xampp\htdocs\glpi\vendor\psr\simple-cache\src)
mexitek/phpcolors in (C:\xampp\htdocs\glpi\vendor\mexitek\phpcolors\src\Mexitek\PHPColors)
guzzlehttp/guzzle in (C:\xampp\htdocs\glpi\marketplace\oauthimap\vendor\guzzlehttp\guzzle\src)
guzzlehttp/psr7 in (C:\xampp\htdocs\glpi\marketplace\oauthimap\vendor\guzzlehttp\psr7\src)
wapmorgan/unified-archive in (C:\xampp\htdocs\glpi\vendor\wapmorgan\unified-archive\src)
paragonie/sodium_compat in (C:\xampp\htdocs\glpi\vendor\paragonie\sodium_compat\src)
LDAP directories
Server: '172.20.0.111', Port: '389', BaseDN: 'DC=VAUVERT,DC=LOCAL', Connection filter:
'(&(objectClass=user)(objectCategory=person)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))', RootDN:
'CN=ADMINGLPI,CN=Users,DC=VAUVERT,DC=LOCAL', Use TLS: none
Server: '192.168.1.5', Port: '389', BaseDN: 'DC=SCOLAIRE1,DC=LOCAL', Connection filter:
'(&(objectClass=user)(objectCategory=person)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))', RootDN:
'ADMINGLPI@SCOLAIRE10.LOCAL', Use TLS: none
Server: '192.168.3.5', Port: '389', BaseDN: 'DC=SCOLAIRE3,DC=LOCAL', Connection filter:
'(&(objectClass=user)(objectCategory=person)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))', RootDN:
'ADMINGLPI@SCOLAIRE3.LOCAL', Use TLS: none
SQL replicas
Not active
Notifications
Way of sending emails: SMTP (anonymous@smtprelay.str-hd.com)
Mails receivers
Plugins list
advancedplanning Name: advancedplanning Version: 1.0.0 State: Enabled
news Name: Alertes Version: 1.9.1 State: Enabled
treeview Name: Arborescence Version: 1.9.1 State: Enabled
barcode Name: Barcode Version: 2.6.2 State: Enabled
databases Name: Bases de données Version: 2.3.2 State: Enabled
camerainput Name: Camera Input Version: 1.0.3 State: Enabled
fields Name: Champs supplémentaires Version: 1.13.0 State: Enabled
connections Name: Connexions Version: 9.5 State: Enabled
useditemsexport Name: Export des éléments utilisés Version: 2.4.0 State: Enabled
fusioninventory Name: FusionInventory Version: 9.5.0+1.0 State: Enabled
gappessentials Name: Gapp Essentials Version: 1.2.0 State: Enabled
genericobject Name: Gestion d'objets Version: 2.11.1 State: Enabled
oauthimap Name: Oauth IMAP Version: 1.3.3 State: Enabled
mreporting Name: Plus de rapports Version: 1.7.4 State: To update
satisfaction Name: Plus de satisfaction Version: 1.5.2 State: Installed / not activated
taskdrop Name: TaskDrop Version: 1.2.0 State: Enabled
typology Name: Typologies Version: 2.7.2 State: Enabled
vizir Name: Vizir Version: 1.0.0 State: Not installed
Last edited by FredB30 (2022-05-03 15:39:46)
Offline
J'ai tenté également de faire
repair table glpi_entities;
mais j'obtiens la réponse
The storage engine for the table doesn't support repair
D'autres idées ?
Offline
Pour l'erreur SQL 1062 as tu vérifié que tu n'a pas de doublons de ligne ? car oui parfois cela peut être du a la limite que tu as visiblement augmenter et qui n'a rien changé mais cela peut parfois être du à des doublons il me semble.
Ensuite je ne sais pas si cela à un rapport mais ton PHP est en 7.3 et vu que tu souhaite passé en 10 il me semble que le minimum requis est 7.4 pour PHP pour la version 10 .
Cordialement
GLPI 10
GLPI Agent 1.2
Debian 11
Offline
Merci pour ta réponse deer. Effectivement dans la table glpi_entities il y avait des doublons d'ID. Je les aient donc supprimés et pour le coup ça fonctionne. Bien sûr maintenant je dois recréer les entités. Rechercher dans tous les tickets/ordinateurs/utilisateurs/... ce qui était concerné par les entités supprimées et les modifier car par défaut, GLPI m'a tous remis sous l'entité principale.
Ca fonctionne donc un environnement de test mais pour la prod ça ne serait pas cool. Il faut donc que j'arrive à modifier les entités sans les supprimer. A priori c'est le champs enities_ID qui est concerné, sauf qu'il me semble plus ressemblé à un niveau d'entité qu'à vraiment un ID (-1 pour l'entité principale, 0 pour les 2 premiers niveaux de sous-entité et 10 pour les sous-entités suivantes) :
Ici l'arbre de mes entités avec l'ID trouvé dans la table glpi_entities entre parenthèse :
+ (-1) entité_principale
|-+ (0) sous-entité_1
|-+ (0) sous-entité_2
|-+ (10) sous-entité_2-1
|-+ (10) sous-entité_2-2
|-+ (10) sous-entité_2-3
|-+ (10) sous-entité_2-4
|-+ (10) sous-entité_2-5
|-+ (10) sous-entité_2-6
|-+ (10) sous-entité_2-7
Concernant ta remarque sur PHP, effectivement j'ai dû faire un upgrade de xampp pour passer à la version 8.1 de php. Ce qui je dois bien l'admettre n'ai pas l'idéal car ça nécessite de désinstaller xampp et de le réinstaller, de recréer une base vierge, de réimporter un dump, de refaire une installation de GLPI pour lancer la migration. J'étais très frileux à cette idée mais j'ai dû m'y résigner. J'ai même envisagé de partir sur un ubuntu... alors que je ne m'y connais absolument pas en linux mais en cherchant sur les forums la MAJ de version PHP parait quand même vraiment plus simple dans le monde des pingouins que pour ceux qui préfèrent rester au chaud derrière leurs fenêtres (windows) ! En fait, je ne suis toujours pas certains de pouvoir me lancer dans cette manipulation sur mon serveur de PROD.
S'il existe une meilleure méthode pour l'un des deux points ci-dessus je suis preneur parce que retrouver touts mes éléments dont l'entité a été modifié c'est vraiment contrariant et supprimer xampp sur un serveur de prod c'est quand même pas une idée extraordinaire non plus.
Merci
Offline
Ne peut tu pas simplement supprimé un des doublon et gardé l'autre et ainsi limité la perte et l'impact ?
Pour ce qui est de PHP malheureusement je suis sous linux donc je ne saurais pas te donné de solutions intéressante, cependant il existe de très bon tutoriel pour ce lancer sur GLPI sur linux sur open class room par exemple, tu peux très bien commencer a t'y familiariser et ensuite passer en prod quand tu te sentira prêt car cela parait en tout cas dans les propositions que tu as trouvé très contraignant d'utiliser xampp
GLPI 10
GLPI Agent 1.2
Debian 11
Offline
Merci je vais regarder ces tutos.
Question bête : est-ce que je peut monter une nouvelle install directement en GLPIv10 sur un Debian ou un Ubuntu et récupérer mes données de ma version 9.5.6 ? Ou est-ce qu'il me faut installer un GLPIv9.5.6 sur le serveur linux puis ensuite me lancer dans la migration (qui aura probablement les mêmes erreurs de doublons) ?
Offline
oui tu peux passé en 10 normalement il devrait te proposer de mettre a jour ta DB
GLPI 10
GLPI Agent 1.2
Debian 11
Offline
Mission réussi sur l'environnement de test.
Je reprend ici toutes les étapes :
Dump de ma base 9.5.6 (sûrement le plus important)
Récupération de la clé d'enregistrement GLPI Network (configuration générale)
Arrêt des services apache et MySQL
Copie du dossier glpi en dehors de l'arborescence de xampp
Suppression de la version de xampp
Redémarrage du serveur
Installation de la dernière de version de xampp
Dans PHP.ini modifier certaines valeurs (notamment des extensions à décommenter et la valeur max_input_vars à augmenter pour pouvoir importer le dump)
Dans PhpMySql : Création d'un utilisateur GLPI avec tous les droits
Dans PhpMySql : Création manuelle d'une base base de donnée vierge nommée glpi (sinon à l'installation GLPI n'arrive pas la créer : message d'erreur)
Installation de timezone_2021e_posix_sql avec un GRANT pour GLPI
Installation de la v10 de GLPI
Importation du dump
Copie des anciens répertoires de GLPI v9.5.6 : config, files, marketplace et plugins dans le nouvel environnement.
Au lancement de glpi : Mise à jours de la base vers la version 10 :
ERREUR doublon dans la base glpi_entities
Dans PhpMySql : en fait c'est un nom qui était en doublon donc peut-être que juste la suppression de cette entrée suffirait mais j'ai quand modifier tous mes ID pour qu'il n'y ait pas de doublon dans la colonne ID.
Au lancement de glpi : Mise à jours de la base vers la version 10 : OK avec les avertissements suivants :
- 342 tables utilisent le charset déprécié, utf8mb3. Lancez la commande "php bin/console glpi:migration:utf8mb4" pour les migrer.
- 1446 primary or foreign keys columns are using signed integers. Lancez la commande "php bin/console glpi:migration:unsigned_keys" pour les migrer.
Exécution des scripts demandés avec des erreurs sur les plugins
Réinstallation de la clé d'enregistrement GLPI Network
Au final je retrouve un glpi fonctionnel avec la grande majorité de mes données. Merci @deer
Il faut encore supprimer tous les plugins, modifier la GPO qui installait FusionInventory pour le désinstaller et installer le nouvel agent GLPI à la place sur tous les postes du réseau, et surtout : se lancer à tous refaire sur le serveur de PROD.
Voilà j'espère que ça en aidera certain. Pour ma part puisque j'y suis je vais regarder un peu plus l'installation sur un serveur Linux (Ubuntu ou Debian), pour faciliter les prochaines mises à jours surtout concernant la version de PHP car devoir supprimer Xampp c'est pas top du tout.
Sinon j'avais des plugins sympa quand même j'espère qu'ils sortiront bientôt une version compatible avec GLPI v10. A part s'ils ne sont plus nécessaire peut-être. Moi c'est surtout GenericObject qui me manque. Il me servait à gérer les Tableaux Blancs Interactifs et les caméras IP de vidéoprotection. Je n'ai pas encore trouvé dans glpi 10 la possibilité de créer des nouveaux objets sans passer par un plugin.
Offline
Bonjour,
Si tu souhaite, je peut te donner tout un document avec les étapes lignes par lignes pour une installation sur ubuntu (similaire sur debian).
Bonne journée.
Offline
Bonjour johndu30160,
Oui je suis preneur ça m'évitera de passer trop de temps dans les méandres d'Internet si tu as déjà quelque chose qui tiens la route et qui est accessible à un Windowsien. Tu peux me l'envoyer à : frederic . boyer @ vauvert . com
Merci
Offline
Bon voilà, 1 serveur en prod sur Ubuntu avec GLPI 10. Il ne reste plus qu'à supprimer les agents FusionInventory et installer les agents GLPI à la place, tout ça par GPO.
Sinon c'est tellement documenté sur le net que le passage c'est fait sans trop de douleurs. A priori je n'ai perdu que les liaisons entre mes téléphones et mes ordinateurs, rien de grave.
J'espère que les prochaines mises à jours nécessitant une monté de version de php seront plus simple sur Ubuntu que sur Windows+Xampp.
Offline
Bonsoir Therians,
Jai appris il y a quelques temps que Virtys reprenait TS, très bien. Javais cependant manqué linformation cruciale : la confirmation de migration.
Je me trouve donc bien embêté, ayant passé un certain temps sur TS avant de faire une petite pause.
Jimagine que vous voyez venir ma question : y a-t-il toujours moyen de récupérer mon compte, ou dois-je y renoncer définitivement ?
Bien à vous,
Lunad - ex- ?Teasan
Offline