sql >> Base de Datos >  >> RDS >> Mysql

Conéctese a MariaDB desde la aplicación Java en NetBeans en Linux (Mageia)

Parece que está intentando usar jdbc:mariadb://... para establecer una conexión a una instancia del servidor MariaDB mediante el controlador MySQL JDBC. Eso probablemente no funcionará porque MySQL JDBC Driver usaría jdbc:mysql://... , independientemente de si se está conectando a un servidor MySQL o un servidor MariaDB. Es decir, la cadena de conexión debe coincidir con el controlador que se está utilizando (en lugar de acceder al servidor de la base de datos).

Se supone que los controladores MySQL y MariaDB son algo intercambiables, pero parece prudente usar el conector MariaDB al acceder a un servidor MariaDB. Por lo que vale, la combinación de mariadb-java-client-1.1.7.jar

y

Connection con = DriverManager.getConnection(
        "jdbc:mariadb://localhost/project", 
        "root", 
        "whatever");

trabajó para mi. Descargué MariaDB Client Library para Java desde aquí:

https://downloads.mariadb.org/client-java/1.1.7/

a la que llegué a través de

https://downloads.mariadb.org/

Notas adicionales:

  1. No hay necesidad de un Class.forName() declaración en su código Java.

  2. La configuración predeterminada para MariaDB en Mageia puede incluir skip-networking directiva en /etc/my.cnf . Deberá eliminar (o comentar) esa directiva si desea conectarse a la base de datos a través de JDBC porque las conexiones JDBC siempre se ven como conexiones de "red" a MySQL/MariaDB, incluso si son conexiones de localhost . (Es posible que deba modificar la bind-address valor a algo como 0.0.0.0 también.)