Premise: I ship a Java application which will make a JDBC connection to a MySQL database. (At the time of this writing it could be 5.1 or 5.5, but hopefully the question and answer don't rely heavily on the version.)
Observation: Clearly, I can use the the MySQL JDBC driver (Connector/J) or the MariaDB JDBC driver (MariaDB Java Client) to make the connection to the MySQL server. One huge benefit from the standpoint of an ISV is that the MariaDB driver is LGPL licensed while the MySQL driver is GPL licensed. Performance of the MariaDB driver seems very good.
Question: To what extent is the MariaDB JDBC driver a perfect replacement for the MySQL JDBC driver?
I'm not looking for a debate on the relative merits of the two. But rather I'm hoping someone can answer along the lines of one of these:
- The MariaDB JDBC driver has important issues with X and Y, so you'll have troubles if you use either of these.
- Based on some article or specification or code or other evidence, the MariaDB JDBC driver fully implements [at least] all methods available in the MySQL driver. You'll be fine.
useServerPrepStmts
since1.3.0
, since1.6.0
it's off by default. No idea why.