Verbindung zu MySQL/MariaDB - FAQ-Base

From The Document Foundation Wiki
< Faq‎ | Base‎ | 008
Jump to: navigation, search

Wie kann ich eine Verbindung zu MySQL/MariaDB erzeugen?

Es gibt für MySQL bzw. die MariaDB drei unterschiedliche Verbindungsmöglichkeiten: Die direkte Verbindung mit Hilfe einer Extension, die Verbindung über JDBC und die Verbindung über ODBC.

Die direkte Verbindung mit einer Extension

Für die MySQL-Datenbank existieren Erweiterungen zur direkten Verbindung mit Base. Diese Erweiterungen tragen den Namen MySQL-Connector.

Die JDBC-Verbindung

Um den JDBC-Zugang nutzen zu können, wird der mysql-connector-java.jar in der jeweils zur Datenbank passenden Fassung benötigt. Dieses Java-Archiv wird am besten in das Verzeichnis kopiert, aus dem auch die aktuelle Java-Version von LibreOffice geladen wird. Als Speicherort bietet sich das Unterverzeichnis «...Javapfad.../lib/ext/» an. In Linux-Systemen wird dies durch die Softwareverwaltung oft automatisch erledigt.

Gegebenenfalls kann das Java-Archiv auch separat über Extras ▸ Optionen ▸ LibreOffice ▸ Erweitert ▸ Java Optionen ▸ Class-Pfad... in den Class-Pfad aus jeder beliebigen Stelle der Festplatte übernommen werden. Für diese Option sind dann auch keine Systemverwalterrechte notwendig.

Der Download des *.jar-Archivs kann hier erfolgen.

Die ODBC-Verbindung

Für eine Verbindung über ODBC muss erst einmal die entsprechende ODBC-Software, z.B. Unix-ODBC, installiert sein.

Nach Installation der entsprechenden Software kann es passieren, dass LO die Zusammenarbeit mit ODBC verweigert, weil es die libodbc.so.1 nicht findet. Hier existiert in den meisten Systemen inzwischen die libodbc.so.2. Auf diese Datei muss ein entsprechender Verweis mit dem Namen libodbc.so.1 in dem gleichen Verzeichnis abgespeichert werden.

In den für das System notwendigen Dateien odbcinst.ini und odbc.ini müssen Einträge ähnlich den folgenden existieren:

odbinst.ini

[MySQL]
Description = ODBC Driver for MySQL
Driver = /usr/lib64/libmyodbc5.so

odbc.ini

[MySQL-test]
Description = MySQL database test
Driver = MySQL
Server = localhost
Database = libretest
Port = 3306
Socket =
Option = 3
Charset = UTF8

Diese beiden Dateien liegen bei einem Linux-System im Verzeichnis /etc/unixODBC. Ohne den Eintrag zur Art des verwendeten Zeichensatzes kommt es bei Umlauten zu Problemen, auch wenn die Einstellungen in MySQL/MariaDB und Base übereinstimmen.

Details zu den Verbindungsparametern sind im MySQL-Referenzhandbuch zu finden.