Big thanks Lorenzo! It was the issue you mentioned. I don't know how to tell Guacamole to use jdbc:mariadb://. I guess jdbc:mysql is simply hard-coded, because it was working till MariaDB Connector/J 3.0.
I installed Connector/J 2.7.10 (the newest one before 3.0). Then I got error "Trying to connect with ssl, but ssl not enabled in the server", which I resolved by adding "mysql-ssl-mode: disabled" to the guacamole.properties. So to summarize I faced 3 issues when upgrading from 1.4.0 to 1.5.3 on native installation: 1. Guacamole 1.5.3 installation guide provides URL to the MariaDB Connector/J 3.2, however Guacamole doesn't work with Connector/J 3.0 and later. 2. Guacamole uses connection string jdbc:mysql:// even when it knows from guacamole.properties that parameter mysql-driver is set to mariadb. Starting with MariaDB Connector/J 3.0 the connection string jdbc:mariadb must be used. 3. Compared to previous version of Guacamole and MariaDB Connector/J the Guacamole 1.5.3 and Connector/J 2.7.10 by default connect to DB via SSL if not told otherwise in guacamole.properties. I believe No. 1 is a bug in documentation and No. 2 is a bug in SW. I there a way for me to report the bugs? Viktor On Tue, Sep 5, 2023, 08:43 MAURIZI Lorenzo <[email protected]> wrote: > Maybe you should use > > > > jdbc:mariadb:// > > > > instead of > > jdbc:mysql:// > > > > ?? > > > > According to this page, > https://mariadb.com/kb/en/about-mariadb-connector-j/ , > > > > > > jdbc:mysql scheme compatibility > > MariaDB Connector/J 3.0 only accepts jdbc:mariadb: as the protocol in > connection strings by default. When both MariaDB Connector/J and the MySQL > drivers are found in the class-path, using jdbc:mariadb: as the protocol > helps to ensure that Java chooses MariaDB Connector/J. > > Connector/J still allows jdbc:mysql: as the protocol in connection > strings when the permitMysqlScheme option is set. For example: > > jdbc:mysql://HOST/DATABASE?permitMysqlScheme > > (2.x version did permit connection URLs beginning with both jdbc:mariadb > and jdbc:mysql) > > > > HTH > > > > Regards > > Lorenzo > > > > *Da:* Viktor Nikolov <[email protected]> > *Inviato:* lunedì 4 settembre 2023 19:32 > *A:* [email protected] > *Oggetto:* "No suitable driver found for jdbc:mysql" after upgrade to > 1.5.3 > > > > Hi! > > > > My Guacamole installation stopped working after the upgrade from 1.4.0 to > 1.5.3. :-( > > > > I'm getting the "No suitable driver found for jdbc:mysql" > when the Guacamole starts. > > Please see attached catalina.out (logging level: debug). > > > > I'm using native installation on Ubuntu 22.04.3 running Tomcat 9.0.58 with > MariaDB 10.6 authentication and I believe I did everything according to the > manual. > > > > I compiled and installed guacd from sources. > > I downloaded guacamole-1.5.3.war and copied it to > /var/lib/tomcat9/webapps/guacamole.war . > > I downloaded guacamole-auth-jdbc-1.5.3.tar.gz, extracted it and copied > guacamole-auth-jdbc-mysql-1.5.3.jar to /etc/guacamole/extensions . I > deleted the jar with previous version. > > I downloaded recommended MariaDB Connector/J 3.2, > mariadb-java-client-3.2.0.jar, and copied it to /etc/guacamole/lib . I > deleted the jar with previous version. > > I rebooted the system. > > I didn't make any changes to guacamole.properties. It worked fine with > 1.4.0. Parameter mysql-driver is set to mariadb (see the attachment). > > > > What am I missing??? > > > > Viktor > > >
