Transaktionsprotokolle in einer relationalen Datenbank speichern

Sie können die Transaktionsprotokolle für Ihr Liberty-Profil in einer relationalen Datenbank anstatt als Betriebssystemdateien speichern. Im vollständigen Profil von WebSphere Application Server unterstützt dieses Feature die hohe Verfügbarkeit (HA - High Availability), ohne dass ein gemeinsam genutztes Dateisystem verwendet werden muss. Dieses Feature wird im Liberty-Profil aus Gründen der Kompatibilität und für Evaluierungs- und Testzwecke bereitgestellt.

Informationen zu diesem Vorgang

Der Transaktionsservice von WebSphere Application Server schreibt für jede globale Transaktion, an der zwei oder mehr Ressourcen beteiligt sind oder die auf mehrere Server verteilt ist, Informationen in ein Transaktionsprotokoll. Diese Transaktion werden entweder von Anwendungen oder von dem Container, in dem sie implementiert sind, gestartet oder gestoppt. Der Transaktionsservice verwendet Transaktionsprotokolle, um die Integrität von Transaktionen sicherzustellen. Die Informationen werden in der Vorbereitungsphase einer verteilten Transaktion in die Transaktionsprotokolle geschrieben. Wenn in der Folge WebSphere Application Server mit aktiven Transaktionen nach einem Ausfall erneut gestartet wird, ist der Transaktionsservice in der Lage, anhand der Protokolle alle unbestätigten Transaktionen zu wiederholen. Dadurch kann das Gesamtsystem wieder in einen konsistenten Zustand zurückgebracht werden.

In früheren Releases von WebSphere Application Server wurden die Transaktionsprotokolle als Betriebssystemdateien gespeichert. Dies bleibt auch in WebSphere Application Server Version ab Version 8.5.5 die Standardkonfiguration. Darüber hinaus haben Sie jedoch auch die Möglichkeit, die Transaktionsprotokolle in einem Managementsystem für relationale Datenbanken (RDBMS) zu speichern. Diese Konfigurationsoption zielt auf Kunden ab, die in einer HA-Umgebung (High Availability - hohe Verfügbarkeit) arbeiten. Für die Unterstützung von HA-Transaktionen war in früheren Releases von WebSphere Application Server ein gemeinsam genutztes Dateisystem erforderlich, z. B. ein an NFSv4 angehängter NAS (Network Attached Storage) oder ein SAN (Storage Area Network). Als Alternative zur Verwendung eines gemeinsam genutzten Dateisystems können Kunden, insbesondere diejenigen, die über eine HA-Datenbanktechnologie verfügen, mit diesem neuen Feature ihre HA-Datenbank als gemeinsames Repository für die Transaktionsprotokolle verwenden.

Standardmäßig werden die Transaktionsprotokolle für das Liberty-Profil in Betriebssystemdateien gespeichert. Aus Gründen der Kompatibilität mit dem vollständigen Profil von WebSphere Application Server und für Evaluierungs- und Testzwecke können Sie die Transaktionsprotokolle so konfigurieren, dass sie in einem Managementsystem für relationale Datenbanken gespeichert werden. Dabei kann jeder vom Liberty-Profil unterstützte Datenbanktyp verwendet werden.

Vorgehensweise

Führen Sie die folgenden Schritte aus, um die Transaktionsprotokolle für das Liberty-Profil so zu konfigurieren, dass sie in einem Managementsystem für relationale Datenbanken (RDBMS) gespeichert werden:

  1. Konfigurieren Sie eine dedizierte, nicht transaktionsorientierte Datenquelle in der Datei server.xml im Liberty-Profil.
    Der folgende Beispielauszug aus der Datei server.xml zeigt, wie Sie das Liberty-Profil konfigurieren müssen, damit seine Transaktionsprotokolle in einer DB2-Datenbank gespeichert werden:
    <transaction> 
      <dataSource jndiName="jdbc/tranlogDataSource" transactional="false">
        <jdbcDriver libraryRef="DB2JCC4LIB"/>
        <properties.db2.jcc currentSchema="CBIVP"
          databaseName="SAMPLE" driverType="4"
          portNumber="50000" serverName="localhost" 
          user="db2admin" password="{xor}Oz1tPjsyNjE=" />
      </dataSource>
    </transaction> 
    
    <library id="DB2JCC4LIB">
      <fileset dir="C:/SQLLIB/java" includes="db2jcc4.jar db2jcc_license_cu.jar"/>
    </library>
  2. (Optional) Erstellen Sie die Datenbanktabellen.

    Das Liberty-Profil versucht, beim ersten Serverstart die erforderlichen Datenbanktabellen zu erstellen. Wenn dies nicht möglich ist, z. B. aufgrund fehlender Berechtigung, scheitert der Serverstart. In diesem Fall müssen Sie die zwei erforderlichen Datenbanktabellen manuell erstellen.

    Die folgenden DDL-Strukturen zeigen, wie die Tabellen unter DB2 erstellt werden müssen:
    CREATE TABLE WAS_TRAN_LOG(
      SERVER_NAME VARCHAR(128),
      SERVICE_ID SMALLINT,
      RU_ID BIGINT,
      RUSECTION_ID BIGINT,
      RUSECTION_DATA_INDEX SMALLINT,
      DATA LONG VARCHAR FOR BIT DATA) 
    CREATE TABLE WAS_PARTNER_LOG(
      SERVER_NAME VARCHAR(128),
      SERVICE_ID SMALLINT,
      RU_ID BIGINT,
      RUSECTION_ID BIGINT,
      RUSECTION_DATA_INDEX SMALLINT,
      DATA LONG VARCHAR FOR BIT DATA) 
    Die folgenden DDL-Strukturen zeigen, wie die Tabellen unter Oracle erstellt werden müssen:
    CREATE TABLE WAS_TRAN_LOG(
      SERVER_NAME VARCHAR(128),
      SERVICE_ID SMALLINT,
      RU_ID NUMBER(19),
      RUSECTION_ID NUMBER(19),
      RUSECTION_DATA_INDEX SMALLINT,
      DATA BLOB)
    CREATE TABLE WAS_PARTNER_LOG(
      SERVER_NAME VARCHAR(128),
      SERVICE_ID SMALLINT,
      RU_ID NUMBER(19),
      RUSECTION_ID NUMBER(19),
      RUSECTION_DATA_INDEX SMALLINT,
      DATA BLOB)

Symbol das den Typ des Artikels anzeigt. Taskartikel

Nutzungsbedingungen für Information Center | Feedback


Symbol für Zeitmarke Letzte Aktualisierung: 25.08.2015
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=phil&product=was-libcore-mp&topic=twlp_store_logs_in_rdb
Dateiname: twlp_store_logs_in_rdb.html