Comment corriger une recherche ou un chargement de contenu lent dans PaperOffice en reconstruisant les index FULLTEXT

<div>

<h3 class="header_margin">Problème</h3> <p class="text_margin"> Si vous rencontrez des résultats de recherche lents ou des chargements de contenu lents dans PaperOffice, la cause peut être des index FULLTEXT obsolètes ou fragmentés dans votre base de données MariaDB. La reconstruction de ces index peut améliorer considérablement les performances de recherche. </p>

<h3 class="header_margin">Solution Possible</h3> <p class="text_margin"> Ce guide explique comment supprimer et recréer en toute sécurité tous les index FULLTEXT dans votre base de données MariaDB PaperOffice à l'aide de <a href="https://www.heidisql.com/" target="_blank">HeidiSQL</a>. </p>

<p class="disclaimer"> Avis de non-responsabilité : Procédez à vos risques et périls. Effectuez toujours une sauvegarde complète de votre base de données avant d'apporter des modifications. Vous êtes responsable de tout problème ou perte de données résultant de ces actions. </p>

<h3 class="header_margin">Guide Étape par Étape</h3> <ol> <li class="custom_li"> <strong>Installer HeidiSQL</strong><br> Téléchargez et installez HeidiSQL depuis <a href="https://www.heidisql.com/" target="_blank">https://www.heidisql.com/</a>. </li> <li class="custom_li"> <strong>Identifier le Nom de Votre Base de Données PaperOffice</strong><br> <ul> <li class="custom_li">Ouvrez HeidiSQL et connectez-vous à votre serveur MariaDB.</li> <li class="custom_li">Dans le panneau de gauche, recherchez la base de données utilisée par PaperOffice. Le nom est unique pour chaque installation (par exemple, <code>xxfwxukcvgahspyehjztxyfuf</code>).</li> </ul> </li> <li class="custom_li"> <strong>Sauvegarder Votre Base de Données</strong><br> <ul> <li class="custom_li">Cliquez avec le bouton droit sur votre base de données PaperOffice dans HeidiSQL.</li> <li class="custom_li">Sélectionnez "Exporter la base de données en SQL".</li> <li class="custom_li">Enregistrez le fichier de sauvegarde dans un emplacement sûr.</li> </ul> </li> <li class="custom_li"> <strong>Préparer le Script de Reconstruction de l'Index FULLTEXT</strong><br> <ul> <li class="custom_li">Ouvrez un nouvel onglet de requête dans HeidiSQL.</li> <li class="custom_li">Copiez et collez le script suivant, en remplaçant <code>xxfwxukcvgahspyehjztxyfuf</code> par le nom réel de votre base de données :</li> </ul> <pre>USE xxfwxukcvgahspyehjztxyfuf;

-- Reconstruire les index FULLTEXT pour toutes les tables pertinentes

-- Table : categories ALTER TABLE categories DROP INDEX name, ADD FULLTEXT INDEX name (name);

-- Table : documents ALTER TABLE documents DROP INDEX name, DROP INDEX xml_data, DROP INDEX type, DROP INDEX original_location, DROP INDEX keywords, DROP INDEX security_geolocation, DROP INDEX contacts, DROP INDEX description, ADD FULLTEXT INDEX name (name), ADD FULLTEXT INDEX xml_data (xml_data), ADD FULLTEXT INDEX type (type), ADD FULLTEXT INDEX original_location (original_location), ADD FULLTEXT INDEX keywords (keywords), ADD FULLTEXT INDEX security_geolocation (security_geolocation), ADD FULLTEXT INDEX contacts (contacts), ADD FULLTEXT INDEX description (description);

-- Table : documents_annotations ALTER TABLE documents_annotations DROP INDEX text, DROP INDEX note_id, DROP INDEX task_id, DROP INDEX reminder_id, DROP INDEX contact_id, DROP INDEX tag_id, DROP INDEX events, ADD FULLTEXT INDEX text (text), ADD FULLTEXT INDEX note_id (note_id), ADD FULLTEXT INDEX task_id (task_id), ADD FULLTEXT INDEX reminder_id (reminder_id), ADD FULLTEXT INDEX contact_id (contact_id), ADD FULLTEXT INDEX tag_id (tag_id), ADD FULLTEXT INDEX events (events);

-- Table : documents_notes ALTER TABLE documents_notes DROP INDEX content, ADD FULLTEXT INDEX content (content);

-- Table : documents_ocr ALTER TABLE documents_ocr DROP INDEX ocr_text, DROP INDEX smartspell, ADD FULLTEXT INDEX ocr_text (ocr_text), ADD FULLTEXT INDEX smartspell (smartspell);

-- Table : documents_tasks ALTER TABLE documents_tasks DROP INDEX this_match, ADD FULLTEXT INDEX this_match (content, todo_subject);

-- Table : documents_barcodes ALTER TABLE documents_barcodes DROP INDEX barcode_value, ADD FULLTEXT INDEX barcode_value (barcode_value);

-- Table : documents_udfs ALTER TABLE documents_udfs DROP INDEX value, ADD FULLTEXT INDEX value (value); </pre> <ul> <li class="custom_li"><strong>Note :</strong> Cette commande peut prendre un certain temps, en fonction de la taille de votre base de données.</li> </ul> </li> <li class="custom_li"> <strong>Exécuter le Script</strong><br> Cliquez sur le bouton "Exécuter" dans HeidiSQL pour exécuter le script. </li> <li class="custom_li"> <strong>Redémarrer le Service MariaDB</strong><br> <ul> <li class="custom_li">Après avoir exécuté le script, redémarrez le service MariaDB pour vous assurer que toutes les modifications sont entièrement appliquées et que toutes les données d'index mises en cache sont actualisées.</li> <li class="custom_li"> <strong>Sous Windows :</strong> <ul> <li class="custom_li">Ouvrez l'application Services (appuyez sur <kbd>Win</kbd>+<kbd>R</kbd>, tapez <code>services.msc</code> et appuyez sur Entrée).</li> <li class="custom_li">Recherchez "MariaDB" dans la liste, cliquez dessus avec le bouton droit et sélectionnez "Redémarrer".</li> </ul> </li> <li class="custom_li"> <strong>Ou via l'invite de commandes :</strong> <pre>net stop MariaDB net start MariaDB</pre> </li> </ul> </li> <li class="custom_li"> <strong>Vérifier les Résultats</strong><br> Testez les fonctionnalités de recherche et de chargement de contenu dans PaperOffice. Les performances devraient être améliorées. </li> <li class="custom_li"> <strong>Si Vous Rencontrez des Problèmes</strong><br> Restaurez votre base de données à partir de la sauvegarde que vous avez créée à l'étape 3. </li> </ol>

<h3 class="header_margin">Résumé</h3> <p class="text_margin"> La reconstruction des index FULLTEXT peut résoudre les problèmes de recherche et de chargement de contenu lents dans PaperOffice. Sauvegardez toujours votre base de données avant d'apporter des modifications et utilisez HeidiSQL pour une expérience conviviale. </p> </div>