MicroStrategy ONE

MicroStrategy Richtlinien und Fehlerbehebung für Repository-Upgrades

Einführung in das Repository-Upgrade

Um die Sicherheit und Stabilität der MicroStrategy Suite, MicroStrategy Repository aktualisiert PostgreSQL im 2021 Update 10 auf Version 14.7.

Dieses Upgrade:

  • Bietet Lösungen für bekannte Sicherheitslücken in älteren Versionen von PostgreSQL

  • Verhindert, dass Benutzer einen Produktausfall erleben

  • Ermöglicht Benutzern, zusätzliche Funktionen und eine verbesserte Leistung der neuesten PostgreSQL-Versionen zu nutzen.

Nur MicroStrategyIn diesem Upgrade-Workflow wird das lokal installierte PostgreSQL (kein Remote-Repository) abgedeckt.

Das Upgrade besteht aus zwei Teilen:

  • Binärdateien-Update für PostgreSQL-Server

  • Datenmigration

Das Upgrade ändert keine zugrunde liegende PostgreSQL-Ordnerstruktur. Komponenten, die PostgreSQL verwenden, sind daher nicht betroffen.

Es gibt mehrere Dienstprogramme/Tools, mit denen Sie die sofort einsatzbereiten MicroStrategy Repository.

  1. MicroStrategy Repository-Verwaltungstool

  2. Natives PostgreSQL-Dienstprogramm zum Sichern und Wiederherstellen

    pg_dump, pg_dumpall

  3. MicroStrategy Marken-Dienstprogramm zum Sichern und Wiederherstellen von PostgreSQL

    mstr_pg_dump, mstr_pg_dumpall

Datenbanken in MicroStrategy Repository

Für eine neu installierte Umgebung unter Windows und Linux werden die folgenden Datenbanken standardmäßig installiert MicroStrategy Repository:

Database Name Windows Express-Installation Benutzerdefinierte Windows-Installation Linux Entsprechende MicroStrategy-Komponente
advdw_wh u     Wird für das MicroStrategy-Tutorial-Projekt verwendet
mstr_collab u u u MicroStrategy Collaboration Server
mstr_library u u u MicroStrategy Library Server
operationaldm_wh u     Wird für das MicroStrategy-Tutorial-Projekt verwendet
platform_analytics_wh u u u Plattformanalyseprojekt
poc_metadata u     Tutorial-Metadaten
tutorial_wh u     Tutorial Lager

Bei einer Linux-Installation und einer benutzerdefinierten Windows-Installation wird nur das entsprechende Warehouse der ausgewählten Komponenten installiert in MicroStrategy Repository. Wenn Sie beispielsweise keine Platform Analytics-Komponente installieren, dann platform_analytics_wh ist nicht in MicroStrategy Repository.

MicroStrategy Repository-Verwaltungstool

Der MicroStrategy Das Repository-Verwaltungstool bietet MicroStrategy Benutzern eine Befehlszeilenschnittstelle zum Sichern, Wiederherstellen und Bereinigen von Datenbanken basierend auf den Datenbankinformationen in DBAdminConfig.yaml.

Weitere Informationen zur MicroStrategy Repository-Verwaltungstool, siehe Repository-Verwaltung.

Der MicroStrategy Der Backup-Vorgang des Repository-Verwaltungstools basiert auf den Datenbankinformationen in DBAdminConfig.yaml. So sichern Sie alle Datenbanken in MicroStrategy Repository, fügen Sie die Datenbanknamen hinzu zu DBAdminConfig.yaml. Nur die Datenbanknamen in DBAdminConfig.yaml werden durch dieses Tool gesichert.

Standardmäßig wird der mstr-Datenbankbenutzer und sein verschlüsseltes Passwort verwendet, um mit diesem Tool auf Datenbanken zuzugreifen. Du findest sie in DBAdminConfig.yaml. Wenn das Passwort geändert wird, funktioniert das Tool möglicherweise nicht wie erwartet.

Natives PostgreSQL-Dienstprogramm zum Sichern und Wiederherstellen

Das native PostgreSQL-Dienstprogramm zum Sichern und Wiederherstellen kann zum Sichern und Wiederherstellen verwendet werden MicroStrategy Repository. Der Lieferumfang umfasst MicroStrategy Repository.

  • pg_dump Erstellt einen Dump einer einzelnen Datenbank.

    Beispiel:

    Kopieren
    # To dump a database called mydb into an SQL-script file:
    pg_dump mydb > db.sql
  • pg_dumpall Sichert alle Datenbanken in einem bestimmten Cluster und bewahrt auch clusterweite Daten wie Rollen- und Tablespace-Definitionen auf.

    Beispiel:

    Kopieren
    # To dump all databases
    pg_dumpall > db.out
  • Zum Wiederherstellen verwenden Sie psql oder pg_restore.

    Beispiel:

    Kopieren
    # To reload pg_dump file into a (freshly created) database named newdb
    psql -d newdb -f db.sql

    # To restore pg_dumpall file db.out
    psql -f db.out postgres

Da es viele Dump-Parameter für die Backup-Option gibt, können Sie diese je nach Ihren eigenen Anforderungen verwenden.

Eine Liste der Parameter sowie Anwendungsbeispiele finden Sie unter pg_dump ,pg_dumpall, Und pg_restore.

Windows

Standardpfad: C:\Program Files (x86)\Common Files\MicroStrategy\Repository\pgsql\bin

Beispiel:

Kopieren
 #dump mstr_collab
 pg_dump -d mstr_collab -Umstr > mstr_collab.sql

 #dump the whole postgres cluster
 pg_dumpall -Umstr > postgres.sql

Linux

Standardpfad: /opt/mstr/MicroStrategy/install/Repository/postgres11/bin

Bevor Sie die Dienstprogramme unter Linux ausführen, müssen Sie:

  • Quelle der setenv.sh Ablage unter /opt/mstr/MicroStrategy/install/Repository/bin.

    Andernfalls tritt der folgende Fehler auf:

    Fehler beim Laden gemeinsam genutzter Bibliotheken: libpq.so.5: Gemeinsam genutzte Objektdatei kann nicht geöffnet werden: Keine solche Datei oder Verzeichnis.

  • Deklarieren Sie den Unix-Domain-Socket zur Verwendung des /tmp Pfad, da das native PostgreSQL-Back-Dienstprogramm den /var/run/postgresql/ Standardpfad.

    Wenn der Pfad nicht angegeben ist, tritt der folgende Fehler auf:

    pg_dump: [Archiver (DB)] Verbindung zur Datenbank „mstr“ fehlgeschlagen: Verbindung zum Server konnte nicht hergestellt werden: Keine solche Datei oder Verzeichnis. Läuft der Server lokal und akzeptiert er Verbindungen über den Unix-Domain-Socket „/var/run/postgresql/.s.PGSQL.5432“?

Beispiel:

Kopieren
#source setenv.sh
source /opt/mstr/MicroStrategy/install/Repository/bin/setenv.sh

#declare unix-domain socket and use pg_dump to dump metadata
cd /opt/mstr/MicroStrategy/install/Repository/postgres11/bin
./pg_dump -h /tmp -d poc_metadata -Umstr > md.dump

#dump the whole postgres cluster
./pg_dumpall -h /tmp -Umstr > postgres.dump

MicroStrategy Marken-Dienstprogramm zum Sichern und Wiederherstellen von PostgreSQL

MicroStrategy stellt außerdem ein „gebrandetes“ Dienstprogramm zur Datensicherung und Wiederherstellung unter Linux bereit. Dieses Dienstprogramm basiert auf dem nativen PostgreSQL-Dienstprogramm zum Sichern und Wiederherstellen. Sie müssen keine Quelle angeben setenv.sh und deklarieren Sie mit diesem Tool einen Unix-Domain-Socket.

Da dieses Dienstprogramm auf einem nativen PostgreSQL-Dienstprogramm zum Sichern/Wiederherstellen basiert, können die mit dem nativen PostgreSQL-Dienstprogramm zum Sichern/Wiederherstellen verwendeten Parameter ebenfalls verwendet werden.

Standardpfad: /opt/mstr/MicroStrategy/install/Repository/bin

Beispiel:

Kopieren
#dump metadata
cd /opt/mstr/MicroStrategy/install/Repository/bin
./mstr_pg_dump -d poc_metadata -Umstr > md.dump

#dump the whole postgres cluster
./mstr_pg_dumpall -Umstr > postgres.dump

Aktualisieren Sie die MicroStrategy Repository über den Plattforminstaller

Linux

  1. Starten Sie das Installationsprogramm und wählen Sie Aktualisierung zur Aktualisierung Ihres lokalen MicroStrategy auf 2021 Update 10.

  2. Wenn MicroStrategy Plattformanalyse wurde in einer früheren Installation ausgewählt, wird es automatisch ausgewählt in Komponenten auswählen. Überprüfen Sie die Komponenten, die Sie aktualisieren möchten, und klicken Sie auf Nächste.

  3. Wenn die Verbindungsinformationen zum MicroStrategy Das Repository wurde seit der letzten Installation geändert. Sie werden aufgefordert, den Benutzernamen, das Kennwort und den Port für die Datenbankanmeldung einzugeben. Füllen Sie die Felder aus und klicken Sie auf Nächste.

  4. Sie werden aufgefordert, das Repository zu sichern, bevor Sie fortfahren. Überprüfen Sie die Abschnitte oben für Informationen zum Sichern und Wiederherstellen Ihres Repositorys. Um mit dem Upgrade fortzufahren, müssen Sie bestätigen, dass Sie Ihr Repository gesichert haben. Geben Sie dazu Folgendes ein: Aktualisierung. Klicken Sie auf Weiter.

  5. Das Installationsprogramm prüft, ob auf dem System genügend freier Speicherplatz vorhanden ist. Wenn nicht, werden die fehlenden Voraussetzungen aufgelistet und das Upgrade abgebrochen.

  6. Wenn genügend Speicherplatz vorhanden ist, wird der Upgrade-Prozess für das Repository und andere MicroStrategy Komponenten wird fortgesetzt. Wenn das Repository-Upgrade jedoch fehlschlägt, wird das gesamte Upgrade abgebrochen und der folgende Bildschirm angezeigt.

    Klicken Sie auf den Link, um detaillierte Schritte zur Analyse und Fehlerbehebung der Grundursachen anzuzeigen. Sobald die Probleme behoben sind, führen Sie die Installation erneut aus, um das Upgrade abzuschließen.

Überprüfen install.log im logs Ordner (Beispiel: /var/log/MicroStrategy/), um zu sehen, ob es die unten angezeigten PostgreSQL-Upgrade-Protokolle enthält. Wenn sie enthalten sind, ist das Upgrade erfolgreich

Beispiel für ein PostgreSQL-Upgradeprotokoll:

Kopieren
12 Apr 2023, 07:29:41 AM:INFO: Configuring pg_hba.conf file completed
12 Apr 2023, 07:29:49 AM:INFO: Successfully stopped MicroStrategy Repository Administration.
12 Apr 2023, 07:29:49 AM:INFO: Successfully stopped PostgreSQL.
12 Apr 2023, 07:29:49 AM:INFO: Backing up PostgreSQL bin files.
12 Apr 2023, 07:29:49 AM:INFO: Backing up pgdata files.
12 Apr 2023, 07:29:49 AM:INFO: Backing up Repository Administration Tool files.
12 Apr 2023, 07:29:49 AM:INFO: MicroStrategy Repository bin files and pgdata backup completed.
12 Apr 2023, 07:29:49 AM:INFO: Extracting new postgres binary files.
12 Apr 2023, 07:29:50 AM:INFO: Installing Repository files...
12 Apr 2023, 07:29:50 AM:INFO: Copying fileset RepositoryLinuxRepositoryInstallPath files...
12 Apr 2023, 07:29:56 AM:INFO: Initializing PostgreSQL
12 Apr 2023, 07:29:57 AM:INFO: Configuring postgresql.conf file.
12 Apr 2023, 07:29:57 AM:FINE: Using port 54302 temporarily for PostgreSQL upgrade.
12 Apr 2023, 07:29:57 AM:INFO: Configuring postgresql.conf file completed
12 Apr 2023, 07:29:57 AM:INFO: Checking postgres upgrade compatibility.
12 Apr 2023, 07:29:58 AM:INFO: Upgrade compatibility check has been passed.
12 Apr 2023, 07:29:58 AM:INFO: Starting PostgreSQL upgrade.
12 Apr 2023, 07:30:04 AM:INFO: PostgreSQL upgrade completed.
12 Apr 2023, 07:30:04 AM:INFO: Restoring old cluster's configuration files.
12 Apr 2023, 07:30:04 AM:INFO: Restoring pg_hba.conf file.
12 Apr 2023, 07:30:04 AM:INFO: Restoring pg_hba.conf file completed.
12 Apr 2023, 07:30:04 AM:INFO: Restoring postgresql.conf file.
12 Apr 2023, 07:30:04 AM:INFO: Restoring postgresql.conf file completed.
12 Apr 2023, 07:30:04 AM:INFO: Checking MicroStrategy Repository status
12 Apr 2023, 07:30:05 AM:INFO: Started PostgreSQL.
12 Apr 2023, 07:30:05 AM:INFO: Cleaning up files under Repository. 

Windows

  1. Starten Sie das Installationsprogramm, um Ihr lokales MicroStrategy auf 2021 Update 10.

  2. Wenn MicroStrategy Repository wurde in einer früheren Installation ausgewählt, wird es automatisch ausgewählt in Komponenten auswählen. Überprüfen Sie die Komponenten, die Sie aktualisieren möchten, und klicken Sie auf Nächste.

  3. Wenn die Verbindungsinformationen zum MicroStrategy Das Repository wurde seit der letzten Installation geändert. Sie werden aufgefordert, den Benutzernamen, das Kennwort und den Port für die Datenbankanmeldung einzugeben. Füllen Sie die Felder aus und klicken Sie auf Nächste.

  4. Sie werden aufgefordert, das Repository zu sichern, bevor Sie fortfahren. Überprüfen Sie die Abschnitte oben für Informationen zum Sichern und Wiederherstellen Ihres Repositorys. Um mit dem Upgrade fortzufahren, müssen Sie bestätigen, dass Sie Ihr Repository gesichert haben. Geben Sie dazu Folgendes ein: Aktualisierung. Klicken Sie auf Weiter.

  5. Das Installationsprogramm prüft, ob auf dem System genügend freier Speicherplatz vorhanden ist. Wenn nicht, wird der Speicherplatzbedarf aufgelistet und das Upgrade abgebrochen.

  6. Wenn genügend Speicherplatz vorhanden ist, wird der Upgrade-Prozess für das Repository und andere MicroStrategy Komponenten wird fortgesetzt. Wenn das Repository-Upgrade jedoch fehlschlägt, wird das gesamte Upgrade abgebrochen und der folgende Bildschirm angezeigt.

    Klicken Sie auf den Link, um detaillierte Schritte zur Analyse und Fehlerbehebung der Grundursachen anzuzeigen. Sobald die Probleme behoben sind, führen Sie die Installation erneut aus, um das Upgrade abzuschließen.

Überprüfen install.log im MicroStrategy Installationsordner (Beispiel: C:\Program Files (x86)\Common Files\MicroStrategy), um zu sehen, ob es die unten angezeigten PostgreSQL-Upgrade-Protokolle enthält. Wenn sie enthalten sind, ist das Upgrade erfolgreich

Beispiel für ein PostgreSQL-Upgradeprotokoll:

Kopieren
Performing Consistency Checks

-----------------------------
Checking cluster versions                                   ok
Checking database user is the install user                  ok
Checking database connection settings                       ok
Checking for prepared transactions                          ok
Checking for reg* data types in user tables                 ok
Checking for contrib/isn with bigint-passing mismatch       ok
Checking for tables WITH OIDS                               ok
Checking for invalid "sql_identifier" user columns          ok
Creating dump of global objects                             ok
Creating dump of database schemas
                                                            ok
Checking for presence of required libraries                 ok
Checking database user is the install user                  ok
Checking for prepared transactions                          ok

If pg_upgrade fails after this point, you must re-initdb the
new cluster before continuing.

Performing Upgrade
------------------
Analyzing all rows in the new cluster                       ok
Freezing all rows in the new cluster                        ok
Deleting files from new pg_xact                             ok
Copying old pg_xact to new server                           ok
Setting next transaction ID and epoch for new cluster       ok
Deleting files from new pg_multixact/offsets                ok
Copying old pg_multixact/offsets to new server              ok
Deleting files from new pg_multixact/members                ok
Copying old pg_multixact/members to new server              ok
Setting next multixact ID and offset for new cluster        ok
Resetting WAL archives                                      ok
Setting frozenxid and minmxid counters in new cluster       ok
Restoring global objects in the new cluster                 ok
Restoring database schemas in the new cluster
                                                            ok
Adding ".old" suffix to old global/pg_control               ok

If you want to start the old cluster, you will need to remove
the ".old" suffix from C:/Program Files (x86)/Common Files/MicroStrategy/Repository/pgsql/PGDATA/global/pg_control.old.
Because "link" mode was used, the old cluster cannot be safely
started once the new cluster has been started.

Linking user relation files
                                                            ok
Setting next OID for new cluster                            ok
Sync data directory to disk                                 ok
Creating script to analyze new cluster                      ok
Creating script to delete old cluster                       ok

Upgrade Complete
----------------
Optimizer statistics are not transferred by pg_upgrade so,
once you start the new server, consider running:
    analyze_new_cluster.bat

Running this script will delete the old cluster's data files:
    delete_old_cluster.bat

Fehlerbehebung bei PostgreSQL-Upgradefehlern

Wenn das PostgreSQL-Upgrade fehlschlägt, überprüfen Sie install.log um die Grundursache zu finden.

Einige typische Fehlerszenarien für das PostgreSQL-Upgrade sind:

Unzureichender Speicherplatz

Für das Upgrade des Repository wird zusätzlicher Speicherplatz für die Sicherung, die PostgreSQL-Binärdateien und die Migration der Datenbanken benötigt.

Das Installationsprogramm prüft, ob auf dem System genügend freier Speicherplatz vorhanden ist. Andernfalls wird der Upgrade-Vorgang abgebrochen und die folgende Warnung wird angezeigt:

Das Upgrade kann nicht fortgesetzt werden, da auf diesem Computer nicht genügend Speicherplatz vorhanden ist.

Die Passwörter stimmen nicht überein

Der MicroStrategy Das Installationsprogramm muss das alte PostgreSQL-Repository mithilfe des Superusers verbinden, der die ursprüngliche PostgreSQL-Installation durchgeführt hat. Wenn das Kennwort geändert wurde und während des Upgrades nicht korrekt angegeben wird, schlägt der Upgradevorgang möglicherweise fehl.

Sie müssen das richtige Superuser-Passwort eingeben, um eine Verbindung mit der alten PostgreSQL-Datenbank herzustellen.

Probleme mit Zugriffsberechtigungen

Der Benutzer, der das Upgrade durchführt, verfügt möglicherweise nicht über die erforderlichen Berechtigungen für den Zugriff auf bestimmte Dateien oder Verzeichnisse, die für das Upgrade erforderlich sind.

Der richtige Benutzer zum Ausführen der MicroStrategy Für die Installation und Aktualisierung des Repository ist der Superuser zuständig.

Falsche Konfigurationseinstellungen

Während des Upgrade-Prozesses müssen möglicherweise die Konfigurationseinstellungen für PostgreSQL aktualisiert werden. Wenn die Einstellungen falsch sind, kann der Upgrade-Vorgang fehlschlagen.

Es wird eine Fehlermeldung protokolliert, die darauf hinweist, dass die Konfigurationsdatei nicht gültig ist, da sie ungültige Einstellungen enthält. Sie müssen die ungültige Konfiguration korrigieren und die Installation erneut ausführen.

Datenkorruption

Wenn während des Upgrade-Vorgangs Fehler oder Probleme bei den migrierten Daten auftreten, kann es zu Datenbeschädigungen kommen.

Es wird eine Fehlermeldung protokolliert, die darauf hinweist, dass die Datendatei für die Datenbank beschädigt ist. Sie müssen den Datenfehler beheben, indem Sie die Daten aus der Sicherung wiederherstellen und die Installation erneut ausführen.

Failover-Szenarien und Wiederherstellung

Wenn PostgreSQL-Datendateien während des Upgrades unterbrochen werden, müssen Sie möglicherweise Datenbanken aus den Sicherungen wiederherstellen, die vor dem Starten des Upgrades erstellt wurden.

  • Wenn Backups mit dem MicroStrategy Wenn Sie das Repository-Verwaltungstool nicht installiert haben, müssen Sie zum Wiederherstellen dasselbe Tool verwenden. Befolgen Sie die Schritte in Repository-Verwaltung um die Wiederherstellung durchzuführen.

  • Wenn die Backups mit dem nativen PostgreSQL-Backup-Dienstprogramm durchgeführt wurden, MicroStrategy empfiehlt, zur Durchführung der Wiederherstellung das native PostgreSQL-Wiederherstellungsprogramm zu verwenden.

Windows

Standardpfad: C:\Program Files (x86)\Common Files\MicroStrategy\Repository\pgsql\bin

Beispiel:

Kopieren
# To restore platform_analytics_wh from dump file with creating same database name
pg_restore -d postgres -Umstr --clean --create platform_analytics_wh.dump

# To restore mstr_collab to the new created database from dump file
psql -Umstr -d mstr_collab < mstr_collab.sql

# To restore pg_dumpall file all_dbs.out
psql -Umstr -f all_dbs.out postgres

Linux

Standardpfad: /opt/mstr/MicroStrategy/install/Repository/bin

Bevor Sie das Wiederherstellungsprogramm unter Linux ausführen, müssen Sie:

  • Quelle der setenv.sh Ablage unter /opt/mstr/MicroStrategy/install/Repository/bin.

    Andernfalls tritt der folgende Fehler auf:

    Fehler beim Laden gemeinsam genutzter Bibliotheken: libpq.so.5: Gemeinsam genutzte Objektdatei kann nicht geöffnet werden: Keine solche Datei oder Verzeichnis.

  • Deklarieren Sie den Unix-Domain-Socket zur Verwendung des /tmp Pfad, da das native PostgreSQL-Back-Dienstprogramm den /var/run/postgresql/ Standardpfad.

    Wenn der Pfad nicht angegeben ist, tritt der folgende Fehler auf:

    pg_dump: [Archiver (DB)] Verbindung zur Datenbank „mstr“ fehlgeschlagen: Verbindung zum Server konnte nicht hergestellt werden: Keine solche Datei oder Verzeichnis. Läuft der Server lokal und akzeptiert er Verbindungen über den Unix-Domain-Socket „/var/run/postgresql/.s.PGSQL.5432“?

Beispiel:

Kopieren
# To restore database platform_analytics_wh
cd /opt/mstr/MicroStrategy/install/Repository/bin
./mstr_pg_restore -d platform_analytics_wh -Umstr < platform_analytics_wh.dump