Software⏱️ 4 min read📅 2026-06-11

How to Fix: Why Java application, metabase, get error when connecting to SQL Server 2016 on Red Hat Enterprise Linux 9 but not on Red Hat Enterprise Linux 7?

Learn how to fix: Why Java application, metabase, get error when connecting to SQL Server 2016 on Red Hat Enterprise Linux 9 but not on Red Hat Enterprise Linux 7?.

Quick Answer: Try checking your system settings or restarting.

The Java application Metabase is experiencing errors when connecting to SQL Server 2016 on Red Hat Enterprise Linux 9, but not on Red Hat Enterprise Linux 7. This issue affects the encryption and trustServerCertificate properties, causing a Certificates do not conform to algorithm constraints error.

This error can be frustrating for users who rely on Metabase to connect to their SQL Server databases. In this troubleshooting guide, we will explore possible reasons for this issue and provide steps to resolve it.

⚠️ Common Causes

  • The primary reason for this issue is likely due to changes in the Java Runtime Environment (JRE) or Red Hat Enterprise Linux 9's system configuration that affect how certificates are handled. The use of Secure Sockets Layer (SSL) encryption may not be enabled by default on Red Hat Enterprise Linux 9, which could cause issues with certificate validation.
  • An alternative reason could be related to the specific version of Metabase software being used, as well as any changes in Java versions or system configurations that might impact certificate handling.

✅ Best Solutions to Fix It

Enable SSL encryption and trustServerCertificate properties

  1. Step 1: Step 1: Check if SSL encryption is enabled on Red Hat Enterprise Linux 9. Run the command `sudo systemctl status nsswitch` to check the status of the NSSwitch service, which is responsible for handling SSL certificates. If the service is not running or is in a failed state, restart it by running `sudo systemctl restart nsswitch`.
  2. Step 2: Step 2: Update the Java Runtime Environment (JRE) on Red Hat Enterprise Linux 9 to ensure that it includes the necessary SSL libraries. Run the command `sudo yum install java-1.8.0-openjdk-devel` to update the JRE to version 1.8.0, which includes support for SSL encryption.
  3. Step 3: Step 3: Configure Metabase to use the trustServerCertificate property. Update the Metabase configuration file (`metabase.properties`) to set `trustServerCertificate=true`. For example, add the following line to the file: `trustServerCertificate=true`
  4. Step 4: Step 4: Restart the Metabase service after making changes to the configuration file. Run the command `sudo systemctl restart metabase` to apply the changes.

Check Metabase software version and Java version compatibility

  1. Step 1: Step 1: Check if you are using a compatible version of Metabase software. Ensure that your Metabase version is greater than or equal to `0.32.x`. If you are using an older version, consider upgrading to the latest version (`v0.50.x`)
  2. Step 2: Step 2: Verify that your Java version is compatible with Metabase. Ensure that your Java version is within the recommended range for Metabase (Java 11 or higher). If your Java version is lower than the recommended range, update it to a compatible version.
  3. Step 3: Step 3: Check if there are any known issues or bugs in your current Metabase and Java versions that might be causing the issue. Visit the Metabase and Java documentation websites for updates on known issues and fixes.

💡 Conclusion

By following these steps, you should be able to resolve the error when connecting to SQL Server 2016 on Red Hat Enterprise Linux 9 using Metabase. Remember to enable SSL encryption and trustServerCertificate properties, update your Java Runtime Environment (JRE) if necessary, and check for compatibility issues with your Metabase software version and Java version.

Did this fix your problem?

If not, try searching for specific error codes.

🔍 Search Error Database

❓ Frequently Asked Questions