C-JDBC Einführung Schnelleinstiegc-jdbc.ow2.org/current/doc/tutorial_de.pdf · 2004. 12. 8. ·...

31
C-JDBC Einführung - Schnelleinstieg 1

Transcript of C-JDBC Einführung Schnelleinstiegc-jdbc.ow2.org/current/doc/tutorial_de.pdf · 2004. 12. 8. ·...

Page 1: C-JDBC Einführung Schnelleinstiegc-jdbc.ow2.org/current/doc/tutorial_de.pdf · 2004. 12. 8. · C-JDBC ist freie Software und entstammt der Open Source Initiative. C-JDBC verfügt

C-JDBC Einführung-

Schnelleinstieg

1

Page 2: C-JDBC Einführung Schnelleinstiegc-jdbc.ow2.org/current/doc/tutorial_de.pdf · 2004. 12. 8. · C-JDBC ist freie Software und entstammt der Open Source Initiative. C-JDBC verfügt

InhaltsverzeichnisEinführung....................................................................................................................................................................3Herunterladen von C-JDBC.........................................................................................................................................6Installation von C-JDBC..............................................................................................................................................7Die C-JDBC Verzeichnisstruktur..............................................................................................................................10Beschreibung der RAIDb1 Beispielanwendung.......................................................................................................12Beschreibung der distributed-raidb1 Beispielanwendung........................................................................................13Ausführen der RAIDb1 Beispielanwendung............................................................................................................14

Starten der Beispielanwendung............................................................................................................................14Verwendung von SquirrelSQL, der SQL Konsole..............................................................................................15

Die grafische Administrationskonsole: Erste Schritte..............................................................................................18Starten der grafischen Benutzerschnittstelle.......................................................................................................18Deaktivierung eines Backends.............................................................................................................................20Reaktivieren eines Backends................................................................................................................................20Sicherung eines Backends....................................................................................................................................21Hinzufügen eines Backends zum Cluster............................................................................................................22

Überwachung von C-JDBC Komponenten...............................................................................................................24Fehlerberichte erstellen.............................................................................................................................................27Weitere Dokumente...................................................................................................................................................29

2

Page 3: C-JDBC Einführung Schnelleinstiegc-jdbc.ow2.org/current/doc/tutorial_de.pdf · 2004. 12. 8. · C-JDBC ist freie Software und entstammt der Open Source Initiative. C-JDBC verfügt

Einführung

Dieses Dokument ermöglicht Ihnen den schnellen und einfachen Einstieg in die Datenbank Clustering SoftwareC-JDBC.

Zur Ausführung der in diesem Dokument aufgeführten Beispielanwendungen benötigen Sie eine Java VMentsprechend J2SE 1.3 oder höher.

C-JDBC ist eine Middleware zum Aufbau und Betrieb von Datenbank-Clustern, mit der beliebigen JavaAnwendungen (Standalone Anwendung, Servlet oder EJB Container usw.) mit Hilfe von JDBC(tm) einvollständig transparenter Zugriff auf Datenbank-Cluster ermöglicht wird.

Bestehende Anwendungen (Client Anwendungen, Applikationsserver oder Datenbank-Server) könnenunverändert eingesetzt werden. Einzige Voraussetzung ist die Verwendung von JDBC.

C-JDBC verfügt über eine flexible Architektur, mit deren Hilfe Skalierbarkeit, Hochverfügbarkeit und Failover-Funktionalitäten für Ihre Datenbanken realisierbar sind. C-JDBC basiert dabei auf dem RAIDb-Konzept(Redundant Array of Inexpensive Databases), also der Bildung redundanter Arrays kostengünstigerDatenbanksysteme. Die Datenbanken werden dabei repliziert und über verschiedene Knoten verteilt, währendC-JDBC die Lastverteilung übernimmt und Datenbankabfragen an die ensprechenden Knoten delegiert.

C-JDBC ist freie Software und entstammt der Open Source Initiative.

C-JDBC verfügt über einen generischen JDBC Treiber, der von den Anwendungen verwendet wird. DieserTreiber reicht die SQL Abfragen an den C-JDBC Controller, der diese dann an den Cluster replizierterDatenbanken weitergibt. Für Lesezugriffe werden dabei Load Balancing-Mechanismen angewendet, fürSchreibzugriffe hingegen Broadcasting-Mechanismen). C-JDBC kann mit beliebigen RDBMS eingesetztwerden, die über einen JDBC Treiber verfügen, also mit nahezu allen am Markt befindlichen Datenbanken.

C-JDBC principle

C-JDBC erlaubt die Bildung beliebiger Cluser-Konfigurationen und dies auch mit heterogenenDatenbanksystemen. Die wesentlichen Merkmale von C-JDBC sind Skalierbarkeit der Performanz,

3

Page 4: C-JDBC Einführung Schnelleinstiegc-jdbc.ow2.org/current/doc/tutorial_de.pdf · 2004. 12. 8. · C-JDBC ist freie Software und entstammt der Open Source Initiative. C-JDBC verfügt

Fehlertoleranz und Hochverfügbarkeit. Weitere Merkmale wie Monitoring, Protokollierung, Caching von SQLAbfragen sind ebenfalls verfügbar.

Die offene Architektur von C-JDBC ermöglicht die problemlose Erweiterung durch Plugins (zum Beispiel fürspezifische Verteilungsmechanismen, Lastverteilung, Verbindungsmanager, Caching Policies usw.).

4

Page 5: C-JDBC Einführung Schnelleinstiegc-jdbc.ow2.org/current/doc/tutorial_de.pdf · 2004. 12. 8. · C-JDBC ist freie Software und entstammt der Open Source Initiative. C-JDBC verfügt

5

Page 6: C-JDBC Einführung Schnelleinstiegc-jdbc.ow2.org/current/doc/tutorial_de.pdf · 2004. 12. 8. · C-JDBC ist freie Software und entstammt der Open Source Initiative. C-JDBC verfügt

Herunterladen von C-JDBC

Die aktuelle Version von C-JDBC erhalten Sie auf der Objectweb-Internetseite:

http://forge.objectweb.org/project/showfiles.php?group_id=42

Wählen Sie das aktuelle Installationsprogramm aus, indem Sie auf den folgenden Link klicken:

c-jdbc-x.y-bin-installer.jar

Bitte ersetzen Sie x und y durch die entsprechenden Versionsnummern. Die Beispiele dieses Dokumentesbasieren auf der Version 1.0.1.

Nach dem Herunterladen können Sie das Installationsprogramm durch Doppelklick auf die jar-Datei starten.Sollte dies auf Ihrem System nicht funktionieren, starten Sie das Installationsprogramm bitte manuell über dieKommandozeile (Windows: cmd.exe, Linux: terminal). Geben Sie hierzu folgenden Befehl ein:

java -jar c-jdbc-1.0-1-bin-installer.jar

Nach einem kurzen Moment sollte nun das Installationsprogramm starten:

6

Page 7: C-JDBC Einführung Schnelleinstiegc-jdbc.ow2.org/current/doc/tutorial_de.pdf · 2004. 12. 8. · C-JDBC ist freie Software und entstammt der Open Source Initiative. C-JDBC verfügt

Installation von C-JDBC

Lesen und akzeptieren Sie zunächst die von C-JDBC verwendete LGPL Lizenz.

Wählen Sie nun das Verzeichnis aus, in dem die Dateien installiert werden sollen. Sollte dieses Verzeichnisnoch nicht existieren, wird es vom Installationsprogramm automatisch erzeugt. Achtung: Sollte dasZielverzeichnis bereits vorhanden sein, werden eventuell vorhandene Dateien überschrieben!

7

Page 8: C-JDBC Einführung Schnelleinstiegc-jdbc.ow2.org/current/doc/tutorial_de.pdf · 2004. 12. 8. · C-JDBC ist freie Software und entstammt der Open Source Initiative. C-JDBC verfügt

Wählen Sie nun die zu installierenden Komponenten aus:

Beschreibung der Komponenten

C-JDBC Driver

Dies ist der JDBC Treiber, der vom Anwendungsprogramm (z. B. Tomcat, JOnAS, JBoss)für den Zugriff auf die Datenbank benötigt wird.

C-JDBC Controller

Dies ist der Kernbestandteil von C-JDBC. Mit Hilfe des C-JDBC Controllers werden dieAnfragen des C-JDBC Drivers verwaltet und verarbeitet.

C-JDBC Administration Console

Die C-JDBC Administrationskonsole dient der Administration und Überwachung von C-JDBC und bietet neben statistischen Auswertungsmöglichkeiten auch Möglichkeiten zurWiederaufnahme von Datenbanken im Fehlerfall. Die Administrationskonsole kannentweder über eine grafische Benutzerschnittstelle oder eine Textkonsole bedient werden.

C-JDBC Documentation

Enthält die C-JDBC Referenzdokumentation inklusive einer ausführlichen Beschreibung derFunktionsweise von C-JDBC sowie der spezifischen Konfigurationsmöglichkeiten.

C-JDBC Demo

Enthält verschiedene Beispielanwendungen, die HypersonicSQL als Replikationsdatenbankverwenden. Hinweis: Wenn Sie dieses Paket nicht installieren, erfolgt ebenfalls keineInstallation von HypersonicSQL.

8

Page 9: C-JDBC Einführung Schnelleinstiegc-jdbc.ow2.org/current/doc/tutorial_de.pdf · 2004. 12. 8. · C-JDBC ist freie Software und entstammt der Open Source Initiative. C-JDBC verfügt

Squirrel

Squirrel ist eine SQL Clientanwendung mit grafischer Benutzerschnittstelle. Mit Squirrelerhalten Sie den Zugriff auf die Inhalte und Metadaten Ihrer Datenbanktabellen. Squirrelermöglicht zudem die Ausführung von SQL-Abfragen innerhalb und ausserhalb vonTransaktionen.

Zur Bearbeitung der Beispiele dieses Dokumentes empfehlen wir die vollständige Installation aller verfügbarenKomponenten wie nachfolgend beschrieben:

Nach der Installation aller ausgewählten Komponenten ist die Installation abgeschlossen. DasInstallationsprogramm erzeugt im Rahmen des Installationsvorgangs ein Skript zur Deinstallation, mit dessenHilfe Sie eine einfache und vollständige Deinstallation von C-JDBC vornehmen können.

9

Page 10: C-JDBC Einführung Schnelleinstiegc-jdbc.ow2.org/current/doc/tutorial_de.pdf · 2004. 12. 8. · C-JDBC ist freie Software und entstammt der Open Source Initiative. C-JDBC verfügt

Die C-JDBC VerzeichnisstrukturNach erfolgreicher Installation stellt sich die Verzeichnisstruktur von C-JDBC wie folgt dar:

3rdParty

Enthält Bibliotheken von Drittanbietern, wie zumBeispiel HypersonicSQL und Squirrel.

bin

Enthält alle Skripte zum Starten und Beenden derProgrammkomponenten und der Beispielanwendungen.

config

Enthält die verschiedenen Konfihurationsdateien(Controller, VirtualDatabase, Loggers,Sprachdateien ...).

10

Page 11: C-JDBC Einführung Schnelleinstiegc-jdbc.ow2.org/current/doc/tutorial_de.pdf · 2004. 12. 8. · C-JDBC ist freie Software und entstammt der Open Source Initiative. C-JDBC verfügt

doc

Enthält das Anwenderhandbuch sowie verschiedeneKonfigurationsbeispiele.

drivers

Enthält die C-JDBC Treiber-Dateien. Zur Laufzeit vonC-JDBC werden ggf. weitere Treiber in diesesVerzeichnis entpackt.

lib

Enthält die von C-JDBC verwendeten Java-Bibliotheken.

log

Enthält die vom Logging System erzeugten Protokolle.Der C-JDBC Report wird ebenfalls in diesesVerzeichnis generiert.

Uninstaller

Enthält ein Skript zur vollständigen Deinstallation vonC-JDBC.

xml

Enthält die von C-JDBC verwendeten DTD- und XSL-Dateien, so zum Beispiel die DTDs zur Validierung derController-Informationen sowie der Konfigurationender virtuellen Datenbanken.

11

Page 12: C-JDBC Einführung Schnelleinstiegc-jdbc.ow2.org/current/doc/tutorial_de.pdf · 2004. 12. 8. · C-JDBC ist freie Software und entstammt der Open Source Initiative. C-JDBC verfügt

Nachfolgend erhalten Sie eine kurze Beschreibung der im bin-Verzeichnis des C-JDBC

Installationsverzeichnis enthaltenen Skriptdateien.

• C-JDBC Skriptdateien:

console.bat/.sh: Startet die Administrationskonsole. Sofern Sie über eine grafisches System

verfügen (MS Windows, X Windows), startet das Programm mit der grafischen Betzerschnittstelle,andernfalls wird es im Textmodus gestartet.

controller.bat/..sh: Startet den Controller mit der voreingestellten Konfigurationsdatei:

$CJDBC_HOME/config/controller/controller.xml

requestplayer.bat/.sh: Ermöglicht das Abspielen einer durch den Controller aufgezeichneten

Sitzung.

xmlvalidator.bat/.sh: Dieses Skript validiert XML-Dateien anhand der entsprechenden DTD. Die

voreingestellte DTD wird dabei zur Validierung der virtuellen Datenbanken verwendet.

• Beispielanwendungen:

demo-distributed-raidb1.bat/.sh: Startet die Beispielanwendung mit verteiltem Controller.

demo-raidb1.bat/.sh: Eine weitere Beispielanwendung, die einen Controller in Verbindung mit

zwei Hypersonic Datenbanken verwendet.

• Software von Drittanbietern:

squirrel.bat/.sh: Die grafische SQL-Clientanwendung.

hsqldb.bat/.sh: Startet eine einfache hsqldb DBMS Datenbank. hsqldb ist ein einfacher Java SQL

Server. Er wird für die Anwendungsbeispiele innerhalb dieses Dokumentes verwendet.

12

Page 13: C-JDBC Einführung Schnelleinstiegc-jdbc.ow2.org/current/doc/tutorial_de.pdf · 2004. 12. 8. · C-JDBC ist freie Software und entstammt der Open Source Initiative. C-JDBC verfügt

Beschreibung der RAIDb1 BeispielanwendungDie RAIDb1 Beispielanwendung startet insgesamt drei HypersonicSQL Datenbank-Server.

1. Das erste Datenbank-Backend enthält die Hauptdatenbank (in diesem Beispiel “localhost”)

2. Das zweite Datenbank-Backend enthält die Failover-Datenbank (in diesem Beispiel “localhost2”)

3. Das dritte Datenbank-Backend dient der Speicherung von Wiederherstellungsinformationen sowie derProtokollierung von Wiederherstellungsanfragen.

Nachdem die drei Datenbankserver gestartet sind, startet die Beispielanwendung einen Controller auf Port25323 und lädt automatisch eine virtuelle Datenbank namens „myDB“, deren Schema den beiden Backendsentspricht.

Nachfolgend sehen Sie das RAIDb1 Replikationsschema. In diesem Beispiel enthalten beiden Backends diegleichen Daten.

Das Schema wird durch die folgenden Create-Statements definiert:

CREATE TABLE ADDRESS(ID INTEGER NOT NULL PRIMARY KEY,FIRSTNAME VARCHAR(255),LASTNAME VARCHAR(255),STREET VARCHAR(255),CITY VARCHAR(255))

CREATE TABLE PRODUCT(ID INTEGER NOT NULL PRIMARY KEY,NAME VARCHAR(255),COST DECIMAL)

CREATE TABLE DOCUMENT(ID INTEGER NOT NULL PRIMARY KEY,ADDRESSID INTEGER,TOTAL DECIMAL)

CREATE TABLE PPOSITION(DOCUMENTID INTEGER NOT NULL,PPOSITION INTEGER NOT NULL,PRODUCTID INTEGER,QUANTITY INTEGER,PRICE DECIMAL)

Mit Hilf von Squirrel können Sie eine Verbindung zum C-JDBC Controller herstellen und somit eine Sicht aufdie entsprechende Datenbank erzeugen.

Die Verbindung zum Controller wird über die folgende URL hergestellt:

jdbc:cjdbc://localhost/myDB

13

Page 14: C-JDBC Einführung Schnelleinstiegc-jdbc.ow2.org/current/doc/tutorial_de.pdf · 2004. 12. 8. · C-JDBC ist freie Software und entstammt der Open Source Initiative. C-JDBC verfügt

Beschreibung der distributed-raidb1 BeispielanwendungDie distributed-raidb1 Beispielanwendung startet insgesamt vier HypersonicSQL Datenbank-Server.

1. Zwei Backend für einen Controller auf Port 25322.

2. Zwei Backends einen weiteren Controller auf Port 25323.

In diesem Beispiel wurde kein Wiederherstellungsprotokoll definiert. Sie können diese Funktionalität jedochauf einfache Weise durch Hinzufügen der entsprechenden Datein aus der RAIDb1 Beispielanwendung fürjeden Controller ergänzen.

Das Beispielprogramm startet beide Controller. In der Ausgabe erhalten Sie dabei Informationen bezüglich desVerbindungsaufbaus zwischen den beiden Controllern.

Das Datenbankschema dieses Clusters entspricht dabei dem im Rahmen der RAIDb1 Beispielanwendungdefinierten Schemas. Da dieses Beispiel ebenfalls das bereits in der RAIDb1 Beispielanwendung beschriebeneVerteilungsschema verwendet, enthalten nun alle vier Backends die gleichen Daten.

Der Zugriff auf diesen Cluster erfolgt über die folgende URL:

jdbc:cjdbc://localhost:25322,localhost:25323/myDB

Die im vorgehenden Beispiel genannte URL (jdbc:cjdbc://localhost/myDB) funktioniert an dieser Stelleebenfalls, da der Treiber selbständig die Cluster-Struktur erkennt und die erforderlichen Informationen ermittelt.

14

Page 15: C-JDBC Einführung Schnelleinstiegc-jdbc.ow2.org/current/doc/tutorial_de.pdf · 2004. 12. 8. · C-JDBC ist freie Software und entstammt der Open Source Initiative. C-JDBC verfügt

Ausführen der RAIDb1 Beispielanwendung

Starten der Beispielanwendung

Führen Sie nun das Skript raidb1.sh (Unix) oder raidb1.bat (Windows)im $CJDBC_HOME/bin Verzeichnisaus.

Wenn Sie das Skript aus der Shell oder Kommandozeile starten, erhalten Sie folgende Ausgabe:

Wie Sie erkennen, werden HypersonicSQL Datenbanken und ein C-JDBC Controller gestartet. Die Verwaltungund der Zugriff auf diese beiden Datenbanken erfolgen dabei über den Controller.

Hinweis: Unter Windows müssen Sie eine beliebige Taste drücken, um den Zustand der beiden Datenbanken(“Listening ...”) anzuzeigen.

15

Page 16: C-JDBC Einführung Schnelleinstiegc-jdbc.ow2.org/current/doc/tutorial_de.pdf · 2004. 12. 8. · C-JDBC ist freie Software und entstammt der Open Source Initiative. C-JDBC verfügt

Verwendung von SquirrelSQL, der SQL Konsole

Nun starten wir Squirrel mit Hilfe des entprechenden Skripts (squirrel.sh/.bat) im bin-Verzeichnis). Nach demStart von Squirrel erhalten Sie folgende Bildschirmausgabe:

Die mit C-JDBC ausgelieferte Version von Squirrel ist bereits mit dem C-JDBC Treiber und demHypersonicSQL Treiber vorkonfiguriert.Wie Sie sehen, wurden drei Aliasnamen angelegt:

myCJDBCdb(port 25322)

Dies ist die Datenbank, die von der Anwendung verwendet wird. Die Anbindung erfolgt dabei mit Hilfe desC-JDBC Treibers.

myHSQLdb (port9001)

Dies ist eines der beiden Backend, das von dem Controller verwaltet wird.

myHSQLDB(port9002)

Hierbei handelt es sich um die Replikation der vorgenannten Datenbank.

Mit dem Doppelklick auf einen Aliasnamen öffnet sich das Authentifizierungs-Fenster:

16

Page 17: C-JDBC Einführung Schnelleinstiegc-jdbc.ow2.org/current/doc/tutorial_de.pdf · 2004. 12. 8. · C-JDBC ist freie Software und entstammt der Open Source Initiative. C-JDBC verfügt

Alle erforderlichen Eingabefelder sind bereits mit den korrekten Werten belegt, klicken Sie daher einfach auf„Ok“.

Sie erhalten nun eine Anzeige der Inhalte und Metadaten der Datenbank sowie der enthaltenenDatenbanktabellen.

Mit einem Klick auf den SQL-Reiter gelanden Sie zur SQL-Konsole, über die Sie beliebige SQL-Statements zurAusführung bringen können. Geben Sie einfach Ihre Anfrage in das Textfeld ein und klicken Sie auf dennachfolgenden Button, um die Anfrage auszuführen:

17

Page 18: C-JDBC Einführung Schnelleinstiegc-jdbc.ow2.org/current/doc/tutorial_de.pdf · 2004. 12. 8. · C-JDBC ist freie Software und entstammt der Open Source Initiative. C-JDBC verfügt

18

Page 19: C-JDBC Einführung Schnelleinstiegc-jdbc.ow2.org/current/doc/tutorial_de.pdf · 2004. 12. 8. · C-JDBC ist freie Software und entstammt der Open Source Initiative. C-JDBC verfügt

Die grafische Administrationskonsole: Erste Schritte

Starten der grafischen Benutzerschnittstelle

Mit Hilfe der Skripte gui.sh bzw. gui.bat können Sie die grafische Benutzerschnittstelle starten:

Nachdem die Anwendung vollständig geladen wurde, erhalten Sie folgende Anzeige:

Zur weiteren Bearbeitung müssen Sie zunächst eine virtuelle Datenbank auswählen. Klicken Sie dazu auf den

19

Page 20: C-JDBC Einführung Schnelleinstiegc-jdbc.ow2.org/current/doc/tutorial_de.pdf · 2004. 12. 8. · C-JDBC ist freie Software und entstammt der Open Source Initiative. C-JDBC verfügt

Controller der oberen linken Ecke des Bearbeitungsfensters:

Nun sehen Sie die virtuelle Datenbank in dem darunterliegenden Panel:

Ein Klick auf die virtuelle Datenbank öffnet den Authentifizierungs-Dialog. Geben Sie hier die Informationenein, die in der Konfigurationsdatei der virtuellen Datenbank spezifiziert wurden. Im Fall der RAIDb1Beispielanwendung erfolgt die Anmeldung mit admin und ohne Angabe eines Passworts.

Das Bearbeitungsfenster wird nun automatisch aktualisiert und stellt nun die entsprechenden Informationen dar:

Wie Sie sehen, sind beide hsqldb Backends aktiviert und funktionsbereit.

20

Page 21: C-JDBC Einführung Schnelleinstiegc-jdbc.ow2.org/current/doc/tutorial_de.pdf · 2004. 12. 8. · C-JDBC ist freie Software und entstammt der Open Source Initiative. C-JDBC verfügt

Deaktivierung eines Backends

Wenn Sie ein Backend-Symbol in die Spalte „disabled“ verschieben, erscheint automatisch eine Dialog, in demSie weitere Informationen zum Checkpoint angeben können. Dieser Checkpoint kann später im Rahmen derWiederherstellung verwendet werden.

In diesem Beispiel werden wir das zweite Backend (“localhost2”) deaktivieren. Verschieben Sie dazu dasentsprechende Symbol in die Spalte „disabled“.

In der Checkpoint-Liste werden die bereits definierten Checkpoints angezeigt. Geben Sie nun einen Namen fürden neuen Checkpoint an (z. B. 'firstcheck') und drücken Sie „Ok“.

Das Backend wird nun deaktiviert. Es werden somit keine weiteren Anfragen von C-JDBC Controller an diesesBackend gerichtet.

Reaktivieren eines Backends

Sie können die erfolgreiche Deaktivierung des Backends mit Hilfe von Squirrel überprüfen. Wenn Sieversuchen, einige Werte einzugeben, werden Sie feststellen, dass diese nur in dem aktiven hsqldbBackend ('localhost') erscheinen.Um das deaktivierte Backend 'localhost2' wieder zu aktivieren, verschieben Sie das Backend-Symbol einfach

21

Page 22: C-JDBC Einführung Schnelleinstiegc-jdbc.ow2.org/current/doc/tutorial_de.pdf · 2004. 12. 8. · C-JDBC ist freie Software und entstammt der Open Source Initiative. C-JDBC verfügt

von der Spalte „disabled“ in die Spalte „enabled“.

Hierdurch wird erneut der Checkpoint-Dialog geöffnet:

Wählen Sie nun den Checkpoint aus, den Sie beim Deaktivieren des Backends festgelegt haben und drücken Sie„Ok“. Hierdurch wird das Backend in den Wiederherstellungszustand versetzt.

Während sich das Backend im Wiederherstellungszustand befindet, erfolgt ein Abgleich mit den während derDeaktivierungsphase erfolgten Änderungen. Dieser Synchronisationsvorgang ist nach einigen Sekundenabgeschlossen.

Sicherung eines Backends

Die beiden Backends sind nun wieder online. Verschieben Sie nun eines der beiden Backend-Symbole in dieSpalte „Backup“. Hierdurch erscheint wieder der bereits bekannte Checkpoint-Dialog. Geben Sie eineBezeichnung für den neuen Checkpoint ein, zum Beispiel „backuptime“, und drücken Sie „Ok“.

22

Page 23: C-JDBC Einführung Schnelleinstiegc-jdbc.ow2.org/current/doc/tutorial_de.pdf · 2004. 12. 8. · C-JDBC ist freie Software und entstammt der Open Source Initiative. C-JDBC verfügt

Während des Sicherungsvorgangens wird das Backend wie folgt dargestellt:

Nach Abschluss der Sicherung erscheint in der Spalte „Restore“ ein neues Symbol:

Während der Sicherung können weiterhin Anfragen an den C-JDBC Controller gerichtet werden, da das zweiteBackend weiterhin aktiv ist.

Sie können die so erzeugte Sicherungsdatei jederzeit (z. B. nach einem Datenbank-Ausfall) wieder einspielenund den ursprünglichen Zustand wiederherstellen.

Hinzufügen eines Backends zum Cluster

Der Start eines neuen HypersonicSQL Prozesses erfolgt mit hsqldb.sh bzw. hsqldb.bat.

Starten Sie nun einen neuen Prozess unter Angabe eines weiteren Ports (z. B. Port 9010):

./hsqldb.sh -port 9010

Hierdurch wird ein neuer Server-Prozess gestartet. Hierbei sollte folgende Ausgabe entstehen:

server.properties not found, using command line or default properties

Opening database: test

HSQLDB server 1.7.1 is running

23

Page 24: C-JDBC Einführung Schnelleinstiegc-jdbc.ow2.org/current/doc/tutorial_de.pdf · 2004. 12. 8. · C-JDBC ist freie Software und entstammt der Open Source Initiative. C-JDBC verfügt

Use SHUTDOWN to close normally. Use [Ctrl]+[C] to abort abruptly

Fri Aug 20 18:50:33 CEST 2004 Listening for connections ...

Fügen Sie nun das neue Backend dem bestehenden Cluster hinzu.

Klicken Sie hierzu mit der rechten Maustaste auf ein bestehendes Backend und wählen Sie den Befehl 'Createnew backend':

Hierdurch öffnet sich ein Dialog, in dem Sie die erforderlichen Informationen zu dem neuen Backend erfassenkönnen:

Im Feld 'New Backend Name' geben Sie den Namen des neuen Backends an (zum Beispiel 'localhost3').

Im Feld 'New URL' geben Sie die URL an, über die das neue Backend verbunden werden soll. Im Regelfallentspricht diese URL den bereits bestehenden URLs der anderen Backends, es muss lediglich die Portnummerangepasst werden. In diesem Beispiel verwenden wir die folgende URL: 'jdbc:hsqldb:hsql://localhost:9010' .

Das Backend 'localhost3' erscheint nun in der Spalte „disabled“:

Bewegen Sie das Backend-Symbol mit Hilfe von Drag&Drop nun auf die im vorhergehenden Schritt erzeugteSicherungsdatei:

Der Controller führt nun die Initialisierung des neuen Backends auf Basis der Sicherungsdatei durch.

Nach Abschluss des Wiederherstellungsvorgangs verbleibt das Backend im deaktivierten Zustand. Sie könnendas Backend nun wie bereits beschrieben aktivieren. Verwenden Sie hierbei den Checkpoint check1.

Sie verfügen nun über einen Cluster mit drei Backends. Dieser Vorgang kann so oft wiederholt werden, bis dieerforderliche Anzahl der Backends erreicht ist.

24

Page 25: C-JDBC Einführung Schnelleinstiegc-jdbc.ow2.org/current/doc/tutorial_de.pdf · 2004. 12. 8. · C-JDBC ist freie Software und entstammt der Open Source Initiative. C-JDBC verfügt

Überwachung von C-JDBC KomponentenDurch den Klick mit der rechten Maustaste auf einen Controller erhalten Sie das folgende Kontextmenü:

Wählen Sie „Monitor Controller“ aus. Hierdurch wird der folgende Dialog aufgerufen:

25

Page 26: C-JDBC Einführung Schnelleinstiegc-jdbc.ow2.org/current/doc/tutorial_de.pdf · 2004. 12. 8. · C-JDBC ist freie Software und entstammt der Open Source Initiative. C-JDBC verfügt

Sie können nun die gewünschten Monitoring-Elemente aktivieren:

Das Monitoring erfolgt online, so dass Sie die Informationen nur im geöffneten Fenster verfügbar sind.

Nachfolgend ein Beispiel, das die Speichernutzung des Controllers darstellt:

26

Page 27: C-JDBC Einführung Schnelleinstiegc-jdbc.ow2.org/current/doc/tutorial_de.pdf · 2004. 12. 8. · C-JDBC ist freie Software und entstammt der Open Source Initiative. C-JDBC verfügt

Im C-JDBC-Menü finden Sie einige nützliche Funktionen:

Save...

Hierdurch wird die Position aller geöffneten Monitoring-Fenster gespeichert. Beim nächsten Aufruf desMonitoring-Werkzeuges werden diese Fenster automatisch wiederhergestellt.

Load...

Stellt die zuletzt gespeicherten Fensterpositionen wieder her.

Close All graphs

Schliesst alle geöffneten Fenster.

Set options. Ermöglicht die Festlegung einiger Optionen:

27

Page 28: C-JDBC Einführung Schnelleinstiegc-jdbc.ow2.org/current/doc/tutorial_de.pdf · 2004. 12. 8. · C-JDBC ist freie Software und entstammt der Open Source Initiative. C-JDBC verfügt

--> Wie oft sollen die Daten abgerufen werden (-1 bedeutet immer ...)

--> Wie oft sollen die Daten vor der Anzeige zwischengespeichert werden?

--> Frequenz des Datenabrufs. (in Millisekunden)

--> Zeitfenster des Monitoring-Fensters. (in Millisekunden)

Refresh

Erneuert die Bildschirm anzeige nach einer Konfigurationsänderung des Controllers , zum Beispiel nach demhinzufügen oder Löschen von Backends oder virtuellen Datenbanken.

28

Page 29: C-JDBC Einführung Schnelleinstiegc-jdbc.ow2.org/current/doc/tutorial_de.pdf · 2004. 12. 8. · C-JDBC ist freie Software und entstammt der Open Source Initiative. C-JDBC verfügt

Fehlerberichte erstellen

Im Falle eines Fehlers können Sie einen Fehlerbericht erstellen, um so das C-JDBC Team bei der Fehlersucheund -behebung zu unterstützen.

Die Protokollkonfiguration kann jederzeit über das Kontextmenü des Controller aufgerufen werden:

Hierdurch erfolgt die Anzeige der Konfigurationsdatei log4j.properties im LogConfig TabPanel.

Hier können Sie alle erforderlichen Änderung an den in C-JDBC verwendeten Protokollierungseinstellungenvornehmen. In diesem Fall soll für alle Protokollaktivitäten der DEBUG-Modus eingeschaltet werden:

Klicken Sie daher im entsprechenden Kontextmenü auf „Set loggers to DEBUG“:

29

Page 30: C-JDBC Einführung Schnelleinstiegc-jdbc.ow2.org/current/doc/tutorial_de.pdf · 2004. 12. 8. · C-JDBC ist freie Software und entstammt der Open Source Initiative. C-JDBC verfügt

Hierdurch werden in den Protokollen die zusätzlichen DEBUG-Informationen ausgegeben.

Wiederholen Sie nun den Programmaktivität oder den Arbeitsschritt, in dem der Fehler in C-JDBC aufgetretenist.

Wählen Sie nun aus dem Kontextmenü die Funktion „Report“ auf:

Hierdurch wird der gesamte Report im Info TabPanel angezeigt:

Es handelt sich hierbei um eine Darstellung der Datei cjdbc.report, die sich in dem log-Verzeichnis der C-JDBCInstallation befindet.

Diese Datei enthält:

Java Einstellungen (Machine, OS, JVM Version ...)

Konfigurationsangaben zum Controller und den virtuellen Datenbanken

die vollständige Protokollausgaben

Diese Angaben erlauben uns die Fehlersuche auch in komplexen Sachverhalten.

30

Page 31: C-JDBC Einführung Schnelleinstiegc-jdbc.ow2.org/current/doc/tutorial_de.pdf · 2004. 12. 8. · C-JDBC ist freie Software und entstammt der Open Source Initiative. C-JDBC verfügt

Weitere Dokumente

Die aktuelle Dokumentation zu C-JDBC finden Sie im Dokumentationsbereich auf der C-JDBC Webseite:

http://c-jdbc.objectweb.org/doc/index.html

Das vollständige Anwenderhandbuch finden Sie hier:

http://c-jdbc.objectweb.org/current/doc/userGuide/userGuide.pdf

Eine allgemeinere Darstellung von C-JDBC erhalten Sie unter:

http://c-jdbc.objectweb.org/current/doc/C-JDBC_Solutions_Linux_2004.ppt

Sollten Sie Fragen zu den Einsatzmöglichkeiten von C-JDBC haben oder Änderungs- undErweiterungswünsche einbringen wollen, schreiben Sie uns bitte eine E-Mail an:

[email protected]

Vielen Dank!

31