Wie man eine langsame Suche oder langsames Laden von Inhalten in PaperOffice behebt, indem man FULLTEXT-Indizes neu erstellt
Wenn die Suche oder das Laden von Inhalten in PaperOffice langsam ist, kann das Neuerstellen aller FULLTEXT-Indizes in Ihrer MariaDB-Datenbank mit HeidiSQL die Leistung verbessern. Erstellen Sie immer zuerst ein Backup Ihrer Datenbank, folgen Sie der Schritt-für-Schritt-Anleitung und starten Sie den MariaDB-Dienst nach den Änderungen neu. Sie sind für etwaige Probleme oder Datenverluste selbst verantwortlich.
Problem
Wenn Sie langsame Suchergebnisse oder das Laden von Inhalten in PaperOffice feststellen, kann die Ursache veraltete oder fragmentierte FULLTEXT-Indizes in Ihrer MariaDB-Datenbank sein. Das Neuerstellen dieser Indizes kann die Suchleistung erheblich verbessern.
Mögliche Lösung
Diese Anleitung erklärt, wie Sie alle FULLTEXT-Indizes in Ihrer PaperOffice MariaDB-Datenbank sicher löschen und neu erstellen können, indem Sie HeidiSQL verwenden.
Haftungsausschluss: Vorgehen auf eigene Gefahr. Erstellen Sie immer eine vollständige Sicherung Ihrer Datenbank, bevor Sie Änderungen vornehmen. Sie sind für alle Probleme oder Datenverluste verantwortlich, die sich aus diesen Aktionen ergeben.
Schritt-für-Schritt-Anleitung
-
HeidiSQL installieren
Laden Sie HeidiSQL von https://www.heidisql.com/ herunter und installieren Sie es. -
Ihren PaperOffice-Datenbanknamen identifizieren
- Öffnen Sie HeidiSQL und verbinden Sie sich mit Ihrem MariaDB-Server.
- Suchen Sie im linken Bereich nach der von PaperOffice verwendeten Datenbank. Der Name ist für jede Installation eindeutig (z. B.
xxfwxukcvgahspyehjztxyfuf
).
-
Ihre Datenbank sichern
- Klicken Sie mit der rechten Maustaste auf Ihre PaperOffice-Datenbank in HeidiSQL.
- Wählen Sie "Datenbank als SQL exportieren".
- Speichern Sie die Sicherungsdatei an einem sicheren Ort.
-
Das Skript zur Neuerstellung des FULLTEXT-Index vorbereiten
- Öffnen Sie einen neuen Abfrage-Tab in HeidiSQL.
- Kopieren Sie das folgende Skript und fügen Sie es ein, wobei Sie
xxfwxukcvgahspyehjztxyfuf
durch Ihren tatsächlichen Datenbanknamen ersetzen:
USE `xxfwxukcvgahspyehjztxyfuf`; -- FULLTEXT-Indizes für alle relevanten Tabellen neu erstellen -- Tabelle: categories ALTER TABLE `categories` DROP INDEX `name`, ADD FULLTEXT INDEX `name` (`name`); -- Tabelle: 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`); -- Tabelle: 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`); -- Tabelle: documents_notes ALTER TABLE `documents_notes` DROP INDEX `content`, ADD FULLTEXT INDEX `content` (`content`); -- Tabelle: 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`); -- Tabelle: documents_tasks ALTER TABLE `documents_tasks` DROP INDEX `this_match`, ADD FULLTEXT INDEX `this_match` (`content`, `todo_subject`); -- Tabelle: documents_barcodes ALTER TABLE `documents_barcodes` DROP INDEX `barcode_value`, ADD FULLTEXT INDEX `barcode_value` (`barcode_value`); -- Tabelle: documents_udfs ALTER TABLE `documents_udfs` DROP INDEX `value`, ADD FULLTEXT INDEX `value` (`value`);
- Hinweis: Dieser Befehl kann je nach Größe Ihrer Datenbank eine Weile dauern.
-
Das Skript ausführen
Klicken Sie auf die Schaltfläche "Ausführen" in HeidiSQL, um das Skript auszuführen. -
Den MariaDB-Dienst neu starten
- Starten Sie nach dem Ausführen des Skripts den MariaDB-Dienst neu, um sicherzustellen, dass alle Änderungen vollständig angewendet und alle zwischengespeicherten Indexdaten aktualisiert werden.
-
Unter Windows:
- Öffnen Sie die Dienste-App (drücken Sie Win+R, geben Sie
services.msc
ein und drücken Sie die Eingabetaste). - Suchen Sie "MariaDB" in der Liste, klicken Sie mit der rechten Maustaste darauf und wählen Sie "Neu starten".
- Öffnen Sie die Dienste-App (drücken Sie Win+R, geben Sie
-
Oder über die Eingabeaufforderung:
net stop MariaDB net start MariaDB
-
Die Ergebnisse überprüfen
Testen Sie die Such- und Inhaltsladefunktionen in PaperOffice. Die Leistung sollte verbessert sein. -
Wenn Probleme auftreten
Stellen Sie Ihre Datenbank aus der in Schritt 3 erstellten Sicherung wieder her.
Zusammenfassung
Das Neuerstellen von FULLTEXT-Indizes kann langsame Such- und Inhaltsladevorgänge in PaperOffice beheben. Sichern Sie immer Ihre Datenbank, bevor Sie Änderungen vornehmen, und verwenden Sie HeidiSQL für eine benutzerfreundliche Erfahrung.