Inhaltsverzeichnis

Hibiscus im Netzwerk mit MySQL nutzen

Vorbemerkungen

Hibiscus verwendet standardmäßig eine embedded Datenbank (http://www.h2database.com/) mit integrierter Verschlüsselung, die beim ersten Start automatisch eingerichtet wird. Hibiscus unterstützt jedoch auch MySQL. Somit ist es möglich, eine Hibiscus-Datenbank von mehreren Arbeitsplätzen aus gleichzeitig zu nutzen.

Die gemeinsame Datennutzung umfasst nur die Konten und Umsätze, das Adressbuch und die Aufträge. Die eigentlichen Bank-Zugänge werden aus Sicherheitsgründen nicht in der MySQL-Datenbank gespeichert sondern nur lokal am jeweiligen Arbeitsplatz. Falls vom Arbeitsplatz also die Umsätze, Adressen und Aufträge nicht nur eingesehen und bearbeitet werden sollen sondern auch Kommunikation mit dem Bank-Server stattfinden soll (Abruf neuer Umsätze, Absenden von Überweisungen, …), dann muss auf jedem dieser Arbeitsplätze auch der Bank-Zugang eingerichtet werden. Diese Trennung hat jedoch den Vorteil, dass Arbeitsplätze mit unterschiedlichen Berechtigungen eingerichtet werden können. So können beispielsweise alle Mitarbeiter-PCs mit Hibiscus-Installation in einer Firma auf die Umsatzdaten zugreifen und neue Überweisungen/Lastschriften erfassen. Das eigentliche Absenden der Aufträge und Abrufen neuer Umsätze ist jedoch nur von dem Computer aus möglich, auf dem zusätzlich auch der Bankzugang eingerichtet ist. Somit kann der Chef/Buchhalter der Firma die abzusendenden Aufträge vorher nochmal kontrollieren.

Erstellung der MySQL-Datenbank

Verwende dein bevorzugtes Administrationswerkzeug (z.Bsp. PhpMyAdmin oder MySQL Administrator), um eine Datenbank mit dem Namen „hibiscus“ sowie einen Benutzer anzulegen oder führe folgende Kommandos aus, um Datenbank und Benutzer mit dem Kommandozeilen-Werkzeug „mysql“ („mysql.exe“ unter Windows) anzulegen. Der angelegte Benutzer muss Lese- und Schreibrechte in dieser Datenbank besitzen.

Linux:

mysql -u root -p

Windows: Öffne zuerst eine Eingabeaufforderung („cmd.exe“) und gib dann ein:

C:\Programme\mysql\bin\mysql.exe -u root -p
mysql> CREATE DATABASE hibiscus CHARACTER SET utf8 COLLATE utf8_general_ci;
mysql> CREATE USER 'hibiscus'@'localhost' IDENTIFIED BY '<passwort>';
mysql> GRANT ALL PRIVILEGES ON hibiscus.* TO 'hibiscus'@'localhost';
mysql> FLUSH PRIVILEGES;

Erstelle nun die von Hibiscus benötigten SQL-Tabellen manuell. Das zugehörige SQL-Script „mysql-create.sql“ befindet sich im Hibiscus-Pluginverzeichnis im Unterverzeichnis „sql“, also in „jameica/plugins/hibiscus/sql/mysql-create.sql“. Je nach Art der Installation kann sich die Datei auch in einem anderen Ordner befindet. Wurde Hibiscus beispielsweise in Ubuntu über den Paketmanager installiert, dann findet sich die Datei in „ /usr/share/jameica/plugins/hibiscus/sql/mysql-create.sql“. Beispielhafter Aufruf mit dem Kommandozeilen-Werkzeug „mysql“:

mysql -u hibiscus -p hibiscus < /opt/jameica/plugins/hibiscus/sql/mysql-create.sql

oder für Windows:

C:\Programme\mysql\bin\mysql.exe -u hibiscus -p hibiscus < C:\Programme\jameica\plugins\hibiscus\sql\mysql-create.sql

Migration existierender Daten

Wenn du Hibiscus bereits genutzt hast (mit der Standard-Embedded-Datenbank), kannst du die Daten in die MySQL-Datenbank migrieren.

  1. Starte Hibiscus und wähle oben im Menü „Hibiscus→Erweitert→Datenbankbackup erstellen“.
  2. Konfiguriere Hibiscus anschließend für den Zugriff auf die MySQL-Datenbank (siehe folgender Absatz)
  3. Starte Hibiscus erneut und wähle im Menü „Hibiscus→Erweitert→Datenbankbackup importieren“. Wähle die im ersten Schritt erstellte XML-Datei mit dem Backup aus. Die Daten werden jetzt in die MySQL-Datenbank kopiert.

Hibiscus konfigurieren

Damit Hibiscus auf eine MySQL-Datenbank zugreifen kann, muss eine Konfigurationsdatei angepasst werden. Im Jameica-Benutzerverzeichnis findest du im Ordner „cfg“ eine Datei mit dem Namen „de.willuhn.jameica.hbci.rmi.HBCIDBService.properties“. Öffnen diese mit einem Texteditor und ändere folgende Zeile:

database.driver=de.willuhn.jameica.hbci.server.DBSupportH2Impl

in

database.driver=de.willuhn.jameica.hbci.server.DBSupportMySqlImpl

Wenn die Zeile noch nicht existiert, dann füge sie manuell hinzu.

Füge außerdem folgende Zeilen neu hinzu:

database.driver.mysql.jdbcurl=jdbc\:mysql\://<Server-IP>\:3306/hibiscus?useUnicode\=Yes&characterEncoding\=ISO8859_1&serverTimezone\=Europe/Paris
database.driver.mysql.username=<Username des MySQL-Users>
database.driver.mysql.password=<Passwort des MySQL-Users>

Ersetze die Werte <Username des MySQL-Users>, <Server-IP> und <Passwort des MySQL-Users> gegen den Hostnamen oder die IP-Adresse des MySQL-Servers sowie Username und Passwort des MySQL-Benutzers. Umschließe die Werte nicht Klammern, Anführungszeichen oder ähnlichem.

MariaDB nutzen

Ein aus den Debian-Paketquellen installiertes Hibiscus muss mit dem MariaDB-Adapter genutzt werden:

database.driver.mysql.jdbcdriver=org.mariadb.jdbc.Driver

Sicherheitshinweise

Nutze MySQL nur in gesicherten und vertrauenswürdigen Intranets, da sowohl die Übertragung als auch die Speicherung der Daten von MySQL standardmäßig unverschlüsselt erfolgt. Lies alternativ die MySQL-Dokumentation zu Grundlegenden SSL-Konzepten sowie der Einrichtung von SSL für MySQL bzw. dieses Tutorial. Die manuelle Erstellung sowie der Import des Server-Zertifikats ist auf den Arbeitsplätzen nicht nötig, da Jameica einen eigenen Keystore verwendet und den Benutzer automatisch bei Bedarf zum Import des Zertifikats auffordert.

Hinweis: Bitte beachte, dass Jameica keine automatischen Backups der MySQL-Datenbank erstellt.