It seems to be a bug in the MS SQL Server setup from Mendix for Mx 10. We also encountered this issue and could solve this by adding DatabaseUseSsl custom runtime setting and setting it to false. This setting is specifically for PostgreSQL, looking at the Mendix documentation, so really weird.. I guess by accident this setting also alters the MS SQL Server connection string whereas it shouldn't. We have logged a ticket at Mendix for this.
EDIT 2-4-2024: It is not a bug but a new feature.
Directly from the reply by Mendix:
As mentioned in the release notes of Mendix 10, we upgraded the SQL Server JDBC driver to version 12.2.0. Since version 10, the driver uses TLS encryption by default. You can turn off encryption by setting DatabaseUseSsl
to false
or by setting encrypt=false
in DatabaseJdbcUrl
. The alternative would be to make sure the server has a trusted certificate or configure the runtime to trust the server certificate.
Please try to use custom configuration under custom tab as I was also facing the same issue but with this configuration it started working for me.
Name: DatabaseJdbcUrl
Value: jdbc:sqlserver://localhost:1434;databaseName=MendixDB;integratedSecurity=false;encrypt=true;trustServerCertificate=true
Hi Mohamed,
Can you validate your connection string against this document:
https://learn.microsoft.com/en-us/sql/connect/jdbc/connecting-with-ssl-encryption?view=sql-server-ver16
You can add an custom configuration to your SQL Server database configuration.
Name: DatabaseJdbcUrl
Value: jdbc:sqlserver://localhost:1433;databaseName=DatabaseName;integratedSecurity=true;encrypt=true;trustServerCertificate=true;
With this setting Microsoft JDBC Driver for SQL Server won't validate the SQL Server TLS certificate.
Go Make It