Welcome to OCS Inventory NG community support, where you can ask questions and receive answers from other members of the community.

Please ask questions only in English or French.

Release 2.12.3 available

The official documentation can be found on https://wiki.ocsinventory-ng.org. Read it before asking your question.

Migration BDD de 2.1 à 2.9

Bonjour,
Je récupère actuellement un serveur exécutant OCS Inventory 2.1 sur un CentOS 6.10.

Je voudrais le migrer sur un nouveau serveur sous RockyLinux 8.4 et avec la dernière release (2.9).

Est-il possible de faire un bond aussi grand ?

Si oui, dois-je juste l'installer, importer la vieille BDD et un update se fera ou ai-je d'autre actions à effectuer ?

Merci d'avance
in OCS Inventory NG server for Unix by (300 points)

8 Answers

+1 vote
 
Best answer
Le cas est fréquent, et la recette usuelle est de dire de monter branche après branche.

A partir de la 2.2, il y a un dossier 'files/update' qui contient les incréments de structure de la base de données sous la forme '70xx.sql' (avec '70xx' étant la valeur 'GUI_VERSION' de la table 'config'). (cf le script 'update.php')

Donc, il faut monter branche par branche jusqu'à 2.2, puis il est possible de monter directement vers 2.8 ou 2.9.

(Au préalable, on réalise, bien sûr, une sauvegarde de la base de données, du dossier 'ocsreports', de l'install /usr/local/share/perl/5.xx/Apache/Ocsinventory.)

Lien branche -> GUI :

2.0 -> 6000

2.1 -> 7006

2.2 -> 7009

2.3 et 2.4 -> 7011

2.5 -> 7015

2.6 -> 7022

2.7 -> 7028

2.8 -> 7037

2.8.1 -> 7039

2.9 -> 7046

2.9.1 -> 7051
by (20.1k points)
edited by
+1 vote
Bonjour,

Je ne le garantis pas mais je pense que c'est possible. Cela imposse certainement de faire à la main toutes les modifications sur la bdd pour qu'elle fonctione correctement (à moins que les dev aient prévu ce genre de cas, si un dev passe par là et peux confirmer ou pas) ; ou sinon pose la question directement sur le github d'OCSNG

Comme il y a tres souvent un upgrade de la bdd pour les nouvelles versions d'OCSNG, je te conseille plutôt de faire des upgrades successifs avec chaque nouvelle version du serveur : De la 2.1 vers 2.2, puis 2.2 vers 2.3, etc etc ; en faisant à chaque "bond" de version, une sauvegarde de la bdd avant et après upgrade par sécurité. Au premier lancement d'une nouvelle version, le serveur fera tout seul les modifications nécessaires sur la bdd.

J'ai fait une migration il y a peu de temps avec un "bond" encore plus grand : De la 2.0.1 sous windows, vers une 2.9 sous Debian en passant par chaque versions intermédiaires jusqu'à la 2.9.  Ok, c'est un peu fastidieux; mais le résultat est parfaitement fonctionnel.

Si tu veux néanmoins tenter un upgrade direct vers la 2.9 et si cela peux t'aider, Je te mets le lien vers mon post de demande d'aide pour cette migration et pour laquelle on m'avait apporté une réponse que j'avais bien pris en compte mais que je n'avais pas utilisé car je n'étais pas sûr de pouvoir faire correctement à la main et sans faire d'erreurs toutes les modifications nécessaires avec un client SQL sur la bdd pour un upgrade direct.

Lien : https://ask.ocsinventory-ng.org/12547/upgrade-ocsng-2-0-1rc-windows-vers-2-8-linux

PS  : pense à consulter le wiki dans lequel tu trouveras une section traitant de l'upgrade d'une installation : Elles contient des informations utiles !

Bon courage

Cordialement
by (5.7k points)
edited by
+1 vote
Je reprends le sujet initial :

- serveur initial : Centos 6.10 + OCS 2.1

- serveur cible : Rocky 8.4

Je suggère de

- créer le nouveau serveur

- installer les prérequis comme OCS 2.8 ou 2.9

- installer OCS 2.1 (la même que l'existente)

- importer l'export de la base (mysqldump >ocs.sql puis mysql <ocs.sql)

- vérif si ok + sauvegarde

- installer OCS 2.2.1 + ouvrir  = upgrade vers 2.2 = GUI 7009

- vérif si ok + sauvegarde

- installer OCS 2.? (au choix)

- vérif si ok

NB : l'update 7037.sql est particulièrement long car c'est la création de la table 'software' qui remplace 'softwares'.

NB : je suis en train de monter depuis 2.0.5 pour un parc de 12-14.000 machines. je voudrais aller à 2.8.1.
by (20.1k points)
edited by
0 votes
Merci pour vos réponses.

J'ai fait un upgrade en 2.2 puis j'ai importé le dump sur la 2.9 et passé les scripts sql.

Mes machines remontent bien mais il manque des fonctionnalités dans la configuration comme par exemple l'authentification LDAP.
by (300 points)
0 votes
J'ai passé sous silence une méthode simple et efficace :

- install serveur neuf

- install prérequis

- création de la base

- install OCS en version 2.x

- lancement = initialisation de la base pour la version installée

- déplacement de la base vers une copie (je préconise 'adminer')

- import du dump de la base

- application des différents fichiers '70xx.sql' dans l'ordre + update 'config' pour GUI_VERSION

- lancement : si GUI_VERSION est à la bonne version d'OCS, ça roule.

Cela fonctionne bien à partir de 7006 (début de OCS 2.2).

La question de LDAP est après que la Console d'Administration fonctionne bien (/ocsreports). J'ai testé jusqu'à 2.8.1 et j'ai bien trouvé une interface complète (avec les données à jour structurellement). En fait, depuis 2.0.5, j'ai créé un script issu des updates 2.1 -> 2.2, et j'enchaine les '70xx.sql' ce qui amène à la version voulue.
by (20.1k points)
0 votes
J'ai passé mon serveur Centos 6.10 de la version 2.1 à 2.2.

J'ai ensuite réalisé un dump de la bdd que j'ai importé vers mon nouveau server (RockyLinux 8.4 et OCS inventory 2.9 installé à partir des RPMs).

J'ai ensuite essayé plusieurs choses :
- Upgrade automatique par l'interface web : en me connectant, il ma automatiquement été proposé de passer de la version 7009 à 7045. Migration OK, je peux me connecter mais il manque beaucoup de menus et d'options (la config LDAP, par exemple ou encore plus des 2/3 des options dans configuration > configuration générale > interface).

- Upgrade manuel en passant les scripts SQL cités précédement (7011, 7015, 7022, 7028, 7037, 7039, 7046) et MàJ du champ GUI_Version de la table config :
Si je mets le champ à 7046, lors de la connexion, un message me dit que la version attendu est 7045. Si je mets 7045 je peux me connecter mais même constat qu'avec la solution précédente : il manque beaucoup de menus et d'options (la config LDAP, par exemple).

- Upgrade manuel en passant TOUS les scripts SQL de 7010.sql 7045.sql (voir 7046) en faisant attentions aux erreur renvoyées par certains en cas de doublons pour ne pas rater certaines requêtes en dessous de celles qui posent soucis. J'en ensuite bien entendu mis à jour le champ GUI_Version de la table config :
Même constant que qu'avec les deux solutions précédentes.

Avez-vous une idée ?

Merci d'avance
by (300 points)
0 votes

RockyLinux 8.4 et OCS inventory 2.9 installé à partir des RPMs ??

Peut-être essayer depuis la version source ?

mkdir ocs-291

cd ocs-291

wget https://github.com/OCSInventory-NG/OCSInventory-ocsreports/releases/download/2.9.1/OCSNG_UNIX_SERVER-2.9.1.tar.gz

tar xvzf OCSNG_UNIX_SERVER-2.9.1.tar.gz

cd OCSNG_UNIX_SERVER-2.9.1

vi setup.sh       # ajuster eventuellement les dossiers

./setup.sh

# ajuster les conf-available/ocs* et sites-available/ocs*

# activer avec a2enconf xxxx et a2ensites xxxx

# redémarrer apache2 : systemctl restart http ?

by (20.1k points)
0 votes
J'ai trouvé la solution : activer le paramétrage avancé pour avoir accès à tout.

Merci pou votre aide pour l'upgrade de la BDD de 2.2 à la dernière.
by (300 points)
 
Powered by Question2Answer
...