Hi,
I have Guacamole servers running on Rocky Linux 8. To date they have
been 1.5.4 but I have also upgraded one of them to 1.5.5 to see if the
issue persists, and it does.
I am running the standard mariadb-server install on Rocky, and have
installed the latest mariadb java client files from the AppStream
repository. I have separately downloaded the latest java connector jar
from the MariaDB web site.
Installed Packages
mariadb.x86_64 3:10.5.22-1.el9_2
mariadb-backup.x86_64 3:10.5.22-1.el9_2
mariadb-common.x86_64 3:10.5.22-1.el9_2
mariadb-connector-c.x86_64 3.2.6-1.el9_0
mariadb-connector-c-config.noarch 3.2.6-1.el9_0
mariadb-connector-odbc.x86_64 3.1.12-3.el9
mariadb-errmsg.x86_64 3:10.5.22-1.el9_2
mariadb-gssapi-server.x86_64 3:10.5.22-1.el9_2
mariadb-java-client.noarch 3.0.3-1.el9
mariadb-server.x86_64 3:10.5.22-1.el9_2
mariadb-server-utils.x86_64 3:10.5.22-1.el9_2
I am trying to switch from the mysql to the mariadb connector.
In my libs folder I have both
mysql-connector-j-8.0.32.jar
mariadb-java-client-3.3.3.jar
In my guacamole.properties file I have
# MySQL properties
mysql-hostname: localhost
mysql-port: 3306
mysql-database: <guacdb>
mysql-username: <guacuser>
mysql-password: <guacpassword>
mysql-driver: mysql
# mysql-driver: mariadb
Everything works correctly with the driver set to mysql.
However, if I change the comment on the last two lines to switch to the
mariadb driver, and restart tomcat, then I get the following error when
connecting to Guacamole
ERROR
An error has occurred and this action cannot be completed. If the
problem persists, please notify your system administrator or check your
system logs.
No errors in catalina or localhost tomcat logs.
/var/log/messages has
Apr 8 12:47:55 apps9 server[1121541]: 12:47:55.314
[http-nio-8080-exec-6] DEBUG o.a.i.t.jdbc.JdbcTransaction - Opening JDBC
Connection
Apr 8 12:47:55 apps9 server[1121541]: 12:47:55.314
[http-nio-8080-exec-6] DEBUG
o.a.g.a.j.DynamicallyAuthenticatedDataSource - Creating new database
connection for pool.
Apr 8 12:47:55 apps9 server[1121541]: 12:47:55.314
[http-nio-8080-exec-6] WARN o.a.g.e.AuthenticationProviderFacade - The
"mysql" authentication provider has encountered an internal error which
will halt the authentication process. If this is unexpected or you are
the developer of this authentication provider, you may wish to enable
debug-level logging. If this is expected and you wish to ignore such
failures in the future, please set "skip-if-unavailable: mysql" within
your guacamole.properties.
Apr 8 12:47:55 apps9 server[1121541]: 12:47:55.314
[http-nio-8080-exec-6] ERROR o.a.g.rest.RESTExceptionMapper - Unexpected
internal error:
Apr 8 12:47:55 apps9 server[1121541]: ### Error querying database.
Cause: java.sql.SQLException: No suitable driver found for
jdbc:mysql://localhost:3306/<guacdb>
Apr 8 12:47:55 apps9 server[1121541]: ### The error may exist in
org/apache/guacamole/auth/jdbc/user/UserMapper.xml
Apr 8 12:47:55 apps9 server[1121541]: ### The error may involve
org.apache.guacamole.auth.jdbc.user.UserMapper.selectOne
Apr 8 12:47:55 apps9 server[1121541]: ### The error occurred while
executing a query
I would have expected that given that I have switched my config to
mariadb - the JDBC string generated by guacamole would be
jdbc:mariadb://localhost:3306/<guacdb>
rather than
jdbc:mysql://localhost:3306/<guacdb>
Could that be the source of the issue?
Have I missed configuring something else?
Thanks
Vincent
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]