PMB V8: "tester sur une base saine"
22 octobre 2026 :
je vais explorer "tester sur une base saine" (j'ai un deuxième serveur pour les tests)
mon pb :avoir des données pour tester :> quelles sont les tables que je dois exporter de la prod pour avoir : le catalogue, les emprunteurs et les prêts, et ne pas recopier du paramétrage incorrect ou absent.
Claude répond :
Pour votre test, vous n'avez probablement pas besoin de tout copier. Le problème concerne les paniers de lecteurs, donc commencez par le minimum, et ajoutez le reste seulement si nécessaire.
Principe
- Exportez les données seules (INSERT, sans CREATE TABLE) : la structure doit venir de l'installation saine, sinon vous recopiez une éventuelle structure bancale.
- Ne copiez jamais
parameters,users, ni les tables de sessions ou de logs : c'est ce qui contient le paramétrage douteux. - Les tables de référence (types de documents, catégories de lecteurs, etc.) sont nécessaires, car les données y renvoient par numéro. Ce n'est pas le paramétrage général de PMB, mais ce sont des listes de votre établissement.
Étape 1 : minimum pour tester le panier de lecteurs
empr,empr_categ,empr_statut,empr_codestatempr_custom,empr_custom_lists,empr_custom_values(champs personnalisés, s'ils sont utilisés)
Avec cela, vous pouvez recréer un panier de lecteurs et relancer votre procédure. Si l'ajout fonctionne sur la base saine, la cause est bien dans votre base de production.
Étape 2 : lecteurs et prêts
pret(prêts en cours),pret_archive(historique, optionnel et souvent volumineux),resa(réservations)groupe,empr_groupe(groupes de lecteurs)- Les tables de référence côté exemplaires, voir ci-dessous.
Étape 3 : catalogue
- Notices :
notices,notices_custom*,notices_langues,notices_relations,analysis,bulletins - Exemplaires :
exemplaireset les listesdocs_type,docs_location,docs_section,docs_statut,docs_codestat - Auteurs, éditeurs, collections :
authors,responsability,publishers,collections,sub_collections,series - Indexation :
categories,notices_categories,indexint - Exemplaires numériques :
explnum(en général sans les fichiers eux-mêmes)
Les index de recherche (tables notices_*global_index, words, etc.) ne sont pas à copier : PMB les reconstruit (Administration > Outils > Nettoyage de base).
Précautions
- Je connais ces noms de tables de mémoire, et PMB en compte plus de 200. Pour vérifier ou compléter, utilisez
SHOW TABLES LIKE 'empr%';(idem avecdocs%,notices%, etc.) sur votre base. - Dans phpMyAdmin, choisissez l'exportation personnalisée, cochez uniquement ces tables, option « données seules », et décochez la création de tables.
- Les identifiants de référence d'une installation neuve (catégories, statuts) risquent d'entrer en conflit avec les vôtres. Videz donc ces tables de la base de test avant l'import, ou utilisez l'option « REPLACE » plutôt qu'« INSERT ».
- Si des colonnes diffèrent entre prod et test, l'import échouera avec un message précis. Ce serait en soi un indice utile sur la migration ratée.
- Ce sont des données personnelles : si le serveur de test est moins protégé, anonymisez les noms, adresses et e-mails des lecteurs.
- Surtout, ne restaurez pas la base de production entière sur le serveur de test. Vous retrouveriez exactement le même problème, sans pouvoir l'isoler.
Faites un export de l'étape 1, testez la procédure, et dites-moi ce que vous obtenez.
Réalisation es précautions
voir le classeur PMB0135_precautions
Etape 1
SHOW TABLES LIKE 'empr%';
Etape 2
SHOW TABLES LIKE '%pret%';
SHOW TABLES LIKE '%resa%';
Etape 3
SHOW TABLES LIKE 'notice%';
SHOW TABLES LIKE 'doc%';
SHOW TABLES LIKE '%categorie%';
Installation v80135
| Nom du paramètre MySQL | Paramétrage recommandé | Paramétrage actuel | Commentaires |
|---|---|---|---|
| max_allowed_packet | >= 64M | 67108864 | |
| sql_mode | NO_AUTO_CREATE_USER | ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION | La modification de ce paramètre est possible en session. Aucun impact. |
| character_set_server | utf8, utf8mb3 ou latin1 | utf8mb4 | La modification de ce paramètre est possible en session. Aucun impact. |
| collation_server | utf8_unicode_ci, utf8mb3_unicode_ci ou latin1_swedish_ci | utf8mb4_0900_ai_ci | La modification de ce paramètre est possible en session. Aucun impact. |
| default_storage_engine | MyISAM ou InnoDB | InnoDB | |
| open_files_limit | >= 10000 | 10000 | |
| key_buffer_size | >= 1G | 16777216 | |
| join_buffer_size | >= 4M | 262144 | La modification de ce paramètre est possible en session. Aucun impact. |
| connect_timeout | 10 | 10 | |
| interactive_timeout | 300 | 28800 | La modification de ce paramètre est possible en session. Aucun impact. |
| wait_timeout | 300 | 28800 | La modification de ce paramètre est possible en session. Aucun impact. |
| query_cache_limit | >= 2M | Aucun | La modification de ce paramètre n'est possible que globalement. Cela peut affecter le fonctionnement d'autres applications. |
| query_cache_size | >= 2M | Aucun | La modification de ce paramètre n'est possible que globalement. Cela peut affecter le fonctionnement d'autres applications. |
| tmp_table_size | >= 256M | 268435456 |
| LES FICHIERS DE CONNEXION A LA BASE DE DONNEES ( pmb/includes/db_param.inc.php et pmb/opac_css/includes/opac_db_param.inc.php ONT ETE MODIFIES. Un modèle de référence est défini dans le répertoire pmb/tables pour chacun de ces fichiers.
VERIFIEZ CES FICHIERS SI VOUS VENEZ DE FAIRE UNE MISE A JOUR DE VOTRE INSTALLATION. |
Successful |
| Les paramètres book_pics_url ne sont plus utilisés. Merci de reporter les valeurs personnalisées dans le paramétrage de vignettes (admin/vignettes/sources/liens externes. |
ERROR 1054 (42S22) at line 554: Unknown column 'pret_already_loaned_active' in 'field list'