0
$\begingroup$

I would like to get the proper driver settings in place to permit the mariaDB database to connect to Mathematica via a JDBC driver running on a Windows11 64-bit machine.

I've got mariaDB version 11.2 installed at the user level in the following directory: "C:\Program Files\MariaDB 11.2" and it runs using port 3306 using user="root" password="mypassword". I do not have any existing mariaDB databases I can connect to yet and am unsure if one needs to be created apriori for a connection between the two applications to be established or where it or suitable configuration files may need to be placed. I am presuming the test database file that is generated upon installation suffices.

Although I have had experience using MS Access with MMA and limited experience with MySQL, I thought mariaDB might be worth exploring since I am interested in WikiData and understand that mariaDB is the underlying engine. Further, I understand it both runs faster and has a more flexible/open license than does MySQL.

I've tried a variety of approaches to establish a connection, including the Connection wizard and the JDBCConnector MySQL(Connector/J), but am unsure what responses to provide the wizard for Hostname or Name. When I attempt to test the connection I get a JDBC error. Likewise,various attempts to establish an SQLConnection using DatabaseLink` directly have also failed.

Does anyone have an approach (working configuration files and their locations) that work to establish a connection between mariaDB Vers. 11.2 and Mathematica Vers. 13.3.1?

$\endgroup$

1 Answer 1

1
$\begingroup$

After getting some additional information from WRI regarding alternative connections for various databases not in their examples, I was able to make the connection once I had properly set the proper classpath to the driver (one of two for MariaDB), utilizing the default port of 3306 used by MariaDB and a previously created database "scorpaenoid", which was installed at the system level. Using the previously established name for my machine "stonefish" the following worked:

 conn = OpenSQLConnection[ JDBC["MySQL(Connector/J)", "stonefish:3306/scorpaenoid"], "Username" -> "root", "Password" -> "secret password"] 

All that remains now is to create a non-root user and provide suitable privileges to work with it.

Hopefully, this will save some time for others who, like me, initially find the online documentation a bit confusing. Of course, the settings will be different if the database and drivers are not set up on a local host but in the cloud.

$\endgroup$

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.