I am trying to establish a connection between LibreOffice (5.4.6.2) and Mariadb (10.1.29)/mysql. I have researched various resources on the web but am stuck not being able to establish a connection

preliminary steps taken:

  • the file mariadb-java-client-2.4.0.jar is downloaded from https://downloads.mariadb.com/Connectors/java/connector-java-2.3.0/
  • JRE is installed and enabled under LibreOffice Tools > Options > Advanced
  • in that Advanced tab, Class Path is set with mariadb-java-client-2.4.0.jar (I have tried with a path /opt/mariadb-java-client-2.4.0.jar and /home/<my user name>/mariadb-java-client-2.4.0.jar)

Based on web site and youtube tutorials, the next steps are to connect via LibreOffice Base. Using the wizard:

  • Connect to an existing database MySQL is chosen from the dropdown
  • after clicking Next >>
  • Under some video and how-to tutorials, there has been a third option of Connect directly... Is this a further clue that something is not set properly?
  • I choose Connect using JDBC...and click Next >>
  • I provide the database name, the server (have tried localhost and 127.0.0.1) and port number 3306
  • for the MySQL JDBC driver class I change the string to org.mariadb.jdbc.Driver according to https://stackoverflow.com/a/41842833/7932473
  • upon clicking Test Class, a dialog with The JDBC driver could not be loaded appears

I have used JDBC connections before under LO 3.x and MySQL before Mariadb came along. Ultimately, I want to use a connection to my database for further analysis of the data using Calc. Is this still possible? If my memory is not failing me, it is possible to open a Base registered database within LO Calc.

From https://mariadb.com/kb/en/library/about-mariadb-connector-j/ item 4 under the Table of Contents, Requirements. There is only mention of Java.

Also, I have found that although Mariadb is a fork of MySQL and is supposedly 100% compatible, for O/JDBC use don't mix-up the two. What might work with MySQL offered by Oracle does not apply to Mariadb/MySQL.

Java Database Connectivity (JDBC). I think we don't have to cover whether or not Java is involved. I was hoping it was the old issue I ran into long ago where it didn't work at the time with the JRE but did with the JDK. Some folk lost a lot of time over that small distinction. If it doesn't apply today, that's OK. My intent was to share since I haven't worked this in some time.

I found a solution to this challenge here

It was necessary to downgrade to the MariaDB 1.5 JDBC connector

I need to give a shot JDBC, and use it to interface with my localhost MariaDB* server. I figure the Datasource URL ought to be set to either mysql://localhost:3306/or mysql://localhost:3306/mysql. Are Datasource URL and JDBC driver class two elective approaches to set up JDBC?