jdbc:mariadb:// ...
を使用しようとしているようです MySQLJDBCDriverを使用してMariaDBサーバーインスタンスへの接続を確立します。 MySQL JDBCDriverはjdbc:mysql:// ...
を使用するため、これはおそらく機能しません。 、MySQLサーバーまたはMariaDBサーバーのどちらに接続しているかに関係なく。つまり、接続文字列はドライバーと一致する必要があります (データベースサーバーにアクセスするのではなく)使用されている
MySQLドライバーとMariaDBドライバーはある程度互換性があるはずですが、MariaDBサーバーにアクセスするときにMariaDBコネクターを使用するのが賢明なようです。価値があるのは、 mariadb-java-client-1.1.7.jar
の組み合わせです。
および
Connection con = DriverManager.getConnection(
"jdbc:mariadb://localhost/project",
"root",
"whatever");
私のために働いた。ここからJava用のMariaDBクライアントライブラリをダウンロードしました:
https://downloads.mariadb.org/client-java/1.1.7/
経由で到着しました
https://downloads.mariadb.org/
追記:
-
Class.forName()
は必要ありません Javaコードのステートメント。 -
MageiaでのMariaDBのデフォルト設定には、
skip-networking
が含まれる場合があります。/etc/my.cnf
のディレクティブ 。 JDBCを介してデータベースに接続する場合は、そのディレクティブを削除(またはコメントアウト)する必要があります。これは、JDBC接続がlocalhost
> 。 (bind-address
を微調整する必要がある場合があります0.0.0.0
のような値 同様に。)