Je tente sur un mutualisé OVH de monter maon dolibar 3.0.2. Tout semblait passer jusqu’à la version 4. Depuis, en me connectant, j’ai:
"Dolibarr a détecté une erreur technique.
Voici les informations qui pourront aider au diagnostic:
Date: 20200612235854
Dolibarr: 4.0.0
Niveau de fonctionnalités: 0
PHP: 5.3.29
Server: Apache
OS: Linux webm128.cluster010.gra.hosting.ovh.net 4.14.154-ovh-vps-grsec-zfs-classid #1 SMP Wed Nov 13 11:24:26 CET 2019 x86_64
UserAgent: Mozilla/5.0 (X11; Linux x86_64; rv:79.0) Gecko/20100101 Firefox/79.0
Type gestionnaire de base de données: mysql
Requête dernier accès en base en erreur: SELECT transkey, transvalue FROM llx_overwrite_trans where lang=‹ fr_FR ›
Code retour dernier accès en base en erreur: DB_ERROR_NOSUCHTABLE
Information sur le dernier accès en base en erreur: Table ‹ aauiwvoqdb0.llx_overwrite_trans › doesn’t exist"
Quel moyen ai-je pour réparer ça? Dois-je considérer la base comme perdue? Le but est de graveir jusqu’à la 11 mais…
Bonjour,
Il n’y a pas lieu de passer par l’installation et la vérification du fonctionnement d’une version 4. On passe les scripts successifs de passage d’une version à l’autre pour aboutir à la v11 (par exemple).
Les étapes sont détaillées ici : https://wiki.dolibarr.org/index.php/Installation_-Mise%C3%A0_jour#Avec_Dolibarr_.28package_standard_.zip.29
J’ai tenté l’opération. Notamment en montant php à 7.3, et je suis content car déjà, dolibarr 11 s’ouvre. Reste qu’il veut que je migre version par version. La 3.9.* vers 4.0.* répond OK. La 4.0.* vers 5.0.* répond KO, l’erreur est:
Request 9 sql=‹ ALTER TABLE llx_facture_fourn_det ADD INDEX idx_facture_fourn_det_fk_code_ventilation (fk_code_ventilation); ›
Erreur DB_ERROR_1072: ALTER TABLE llx_facture_fourn_det ADD INDEX idx_facture_fourn_det_fk_code_ventilation (fk_code_ventilation);
Key column ‹ fk_code_ventilation › doesn’t exist in table
Je n’ai pas osé activer l’étape d’après pour ne pas sacager davantage la table. Les migrations supérieures sont marquées indisponibles.
Bonjour,
La colonne fk_code_ventilation de la table facture_fourn_det vient de la migration 3.3 à 3.4. La colonne est-elle présente (on dirait que non) ? La migration 3.3 -> 3.4 aurait-elle été manquée ? 3.3.0-3.4.0.sql:ALTER TABLE llx_facture_fourn_det ADD COLUMN fk_code_ventilation integer DEFAULT 0 NOT NULL;
Il est en effet possible que j’ai sauté cette version, oui. J’ai dû sauter de la 3.1 à 3.9 je crois. Comment je peux réexécuter le script 3.3.0-3.4.0.sql? Je ne retrouve pas les php qui me permettent de le faire et si je remets la 3.4.0, il cherche à se lancer normalement. Un moyen de le faire à la main? Sachant que je ne saurais pas toucher à la table moi-même
Une autre solution est remettre la base de données en place (sauvegarde d’avant la migration), et de reprendre le processus de migration, avec toutes les étapes. Il n’est pas nécessaire de changer les fichiers en place.
Merci de votre aide, ça m’a rassuré et donné le déclic. En fait depuis OVH, en cliquant sur Bases de données, on peut restaurer sa sauvegarde (ici, vendredi). Une fois fait, bien vérifier, contrairement à ce que j’avais fait, que PHP 7.3 est actif (j’ai utilisé .ovhconfig moi). Si oui, Dolibarr 11 se lancera correctement. Et là il n’y a qu’à suivre les étapes les unes après les autres. Entre la 3.9 et la 4.0, j’ai dû la refaire deux fois je crois, mais à l’arrivée ça marche. Me voici donc avec un Dolibarr 11 pour cette asso, great! Juste, suivre le script, même si ça refait deux fois, ne rien forcer. S’il y a une erreur, c’est probablement php qui n’est pas dans la bone version (résultat de mon tout premier essai avec Dolibarr 11 vendredi)