Relationalen Datenbankserver oder -port ändern

Im Rahmen des Backup-/Restore-Prozesses können Sie Essbase mit einer neuen Oracle-Datenbankinstanz neu konfigurieren. In diesem Thema wird gezeigt, wie Sie den Server oder Port einer relationalen Datenbank ändern.

Relationalen Datenbankserver ändern

  1. Stoppen Sie die aktuell ausgeführte Essbase-Instanz.
    cd <Oracle_HOME>/user_projects/domains/essbase_domain/esstools/bin
    ./stop.sh
  2. Erstellen Sie einen neuen Datenbankbenutzer <export_user_name>, und führen Sie den Befehl "expdp" aus, um ein Schemabackup zu erstellen. Exportieren Sie nur das RCUPrefix_essbase-Schema.

    Beispiel:

    alter session set container="containername";
    create user <export_user_name> identified by <password>;
    grant create session, create table to <export_user_name>;
    create or replace directory dmpdir to <export_user_name>;
    grant DATAPUMP_EXP_FULL_DATABASE to <export_user_name>;
    grant DATAPUMP_IMP_FULL_DATABASE to <export_user_name>;
    grant user <export_user_name> default tablespace users;
    alter user <export_user_name> quota unlimited on users;
    exit;
    expdp <export_user_name>/<password>@<pdbname> dumpfile=<RCUPrefix>.dmp logfile=<RCUPrefix>.log schema=<RCUPrefix>_ESSBASE directory=dmpdir
  3. Es wird sehr empfohlen, ein Backup des Anwendungsverzeichnisses zu erstellen. Wenn Sie bereits ein Backup haben oder Ihr Anwendungsverzeichnis viele große Anwendungen enthält, können Sie diesen Schritt überspringen.

    Beispiel:

    cd user_projects/applications/essbase/
    tar -cvfz ~/Backup/Apps.tar.gz app/*
  4. Neue Essbase-Instanz für eine neue Oracle-Datenbank konfigurieren Sie haben die Möglichkeit, den Domain-Root- und Anwendungsverzeichnispfad einzugeben - mit den folgenden Optionen:
    • Wenn Sie "user_projects" als Hauptinstanz wiederverwenden möchten und diese bereits von der alten Instanz verwendet wird, benennen Sie die alten user_projects in etwas anderes um, bevor Sie das Konfigurationstool starten.
    • Oder geben Sie einen neuen 'user_projects_XXX' für den Domain-Root- und Anwendungsverzeichnispfad einer neuen Konfiguration ein.

    Hinweis:

    Versuchen Sie nicht, etwas zu entfernen, bis eine neue Instanz hochgefahren und gestartet ist.
    Beispiel: (auf der Konfigurationsseite Domaindetails, auf der Sie Domain- und Anwendungsspeicherorte auswählen):
    • Domainname essbase_domain
    • Domain-Root Oracle/21.4.2/Middleware/Oracle_Home/user_projects/domains
    • Anwendungsverzeichnis /Middleware/Oracle_Home/user_projects/applications/essbase
    • WebLogic-Administratoraccount

      ...

  5. Schließen Sie die Konfiguration einer neuen Essbase-Instanz für eine neue Oracle-Datenbank ab. Achten Sie darauf, einen neuen Schemanamen zu verwenden.
  6. Stoppen Sie Essbase erneut (siehe Schritt 1), nachdem das Konfigurationstool abgeschlossen ist.
  7. Erstellen Sie einen ähnlichen "expuser"-Benutzer für die neue Oracle-Datenbank, und führen Sie den Befehl "impdp" aus, um Daten aus der Dumpdatei wiederherzustellen, die aus dem Backup in Schritt 3 abgerufen wurde. Importieren Sie das RCUPrefix_essbase-Schema nur mit der Remap-Option, wenn das neue Schema einen neuen Namen hat.

    Beispiel:

    alter session set container="containername";
    create user <export_user_name> identified by <password>;
    grant create session , create table to <export_user_name>;
    create or replace directory dmpdir to <export_user_name>;
    grant DATAPUMP_EXP_FULL_DATABASE to <export_user_name>;
    grant DATAPUMP_IMP_FULL_DATABASE to <export_user_name>;
    grant user <export_user_name> default tablespace users;
    alter user <export_user_name> quota unlimited on users;
    exit;
    impdp expuser/<password>@<pdbname>  dumpfile=<schema_name>.dmp logfile=<schema_name>.log REMAP_SCHEMA=[OLD_SCHEMA]_ESSBASE:[NEW_SCHEMA]_ESSBASE directory=dmpdir partition_options=merge table_exists_action=replace  
  8. Stellen Sie das Anwendungsverzeichnis aus dem Backup wieder her, oder verschieben Sie es aus der vorherigen Instanz.
    cd user_projects/applications/essbase/
    tar xvf ~/Backup/Apps.tar
  9. Starten Sie Essbase für die neue Instanz, und stellen Sie sicher, dass alle Elemente erfolgreich ausgeführt werden. Da Sie nichts gelöscht haben, können Sie bei Bedarf jederzeit zur vorherigen guten Instanz zurückkehren. Sobald alles funktioniert, können Sie fortfahren und aufräumen, was Sie nicht brauchen.
    cd <Oracle_HOME>/user_projects/domains/essbase_domain/esstools/bin
    ./start.sh
  10. Beachten Sie, dass alle Einstellungen der alten Managed Server in WebLogic nach der neuen Konfiguration manuell zu den neu erstellten Managed Servern hinzugefügt werden müssen.

Nur Datenbankserverport ändern

  1. Stoppen Sie Essbase-Server.
    cd <Oracle_HOME>/user_projects/domains/essbase_domain/esstools/bin./stop.sh
  2. Ändern Sie den Datenbankport in den Dateien tnsnames.ora und listener.ora auf dem Datenbankserver in den erforderlichen Port, z.B. 1524.
  3. Starten Sie den Listener neu, und starten Sie die Datenbank neu. Prüfen Sie die Verbindung im SQL-Entwickler.
  4. Führen Sie im folgenden Verzeichnis auf dem Essbase-Server Folgendes aus:
    cd <ORACLE_HOME>/user_projects/domains/essbase_domain/config/fmwconfig
    Ändern Sie in jps-config.xml den Port in den neuen Port in dieser Eigenschaft.
    <property name="jdbc.url" value="jdbc:oracle:thin:@(description=(address=(host=DBhost)(protocol=tcp)(port=1524))(connect_data=(service_name=DBPDBname)(server=dedicated)))"/>
    Nehmen Sie in jps-config-jse.xml eine ähnliche Änderung an den Eigenschaften vor, die auf den Datenbankport verweisen.
    <property name="jdbc.url" value="jdbc:oracle:thin:@(description=(address=(host=DBhost)(protocol=tcp)(port=1524))(connect_data=(service_name=DBPDBname)(server=dedicated)))"/>
  5. Führen Sie an der folgenden Stelle die folgenden Schritte aus:
    cd <ORACLE_HOME>/user_projects/domains/essbase_domain/config/jdbc
    Ändern Sie den Datenbankport in den folgenden Dateien in die neue Portnummer

    essbase_datasource-jdbc.xml

    <url>jdbc:oracle:thin:@(description=(address=(host=DBHost)(protocol=tcp)(port=1524))(connect_data=(service_name=DBPDBName)(server=dedicated)))</url>

    LocalSvcTblDataSource-jdbc.xml

    <url>jdbc:oracle:thin:@(description=(address=(host=DBHost)(protocol=tcp)(port=1524))(connect_data=(service_name=DBPDBName)(server=dedicated)))</url>

    opss-audit-jdbc.xml

    <url>jdbc:oracle:thin:@(description=(address=(host=DBHost)(protocol=tcp)(port=1524))(connect_data=(service_name=DBPDBName)(server=dedicated)))</url>

    opss-auditview-jdbc.xml

     <url>jdbc:oracle:thin:@(description=(address=(host=DBHost)(protocol=tcp)(port=1524))(connect_data=(service_name=DBPDBName)(server=dedicated)))</url>

    opss-datasource-jdbc.xml

    <url>jdbc:oracle:thin:@(description=(address=(host=DBHost)(protocol=tcp)(port=1524))(connect_data=(service_name=DBPDBName)(server=dedicated)))</url>

    WLSSchemaDataSource-jdbc.xml

     <url>jdbc:oracle:thin:@(description=(address=(host=DBHost)(protocol=tcp)(port=1524))(connect_data=(service_name=DBPDBName)(server=dedicated)))</url>
  6. Führen Sie an der folgenden Stelle die folgenden Schritte aus:
    cd <ORACLE_HOME>/user_projects/domains/essbase_domain/init-info
    Ändern Sie den Datenbankport in den folgenden Dateien in die neue Portnummer.

    startup-plan-unsub.xml:

     <jvm:value>'OCI;SERVICE=DBHost:1524/DBPDBName'</jvm:value>

    startup-plan.xml:

    <jvm:value>'OCI;SERVICE=DBHost:1524/DBPDBName'</jvm:value>
  7. Starten Sie Essbase neu.
    cd <Oracle_HOME>/user_projects/domains/essbase_domain/esstools/bin
    ./start.sh