You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Mirth连接跨EC2实例MySQL报SSLHandshakeException无合适协议问题咨询

Mirth连接MySQL SSL握手故障排查与解决

问题核心

报错No appropriate protocol (protocol is disabled or cipher suites are inappropriate)本质是Mirth与MySQL在SSL握手阶段,TLS版本或加密套件无法匹配,即便已配置TLS版本仍存在其他遗漏配置点。

前置排查

  • 确认网络连通性:在Mirth所在EC2执行nc -zv <MySQL实例IP> 3306,验证安全组、网络ACL已放通3306端口访问
  • 确认MySQL账号授权:在MySQL中执行SELECT host FROM mysql.user WHERE user = 'mirth使用的数据库账号';,确认已允许Mirth所在EC2 IP访问

解决方案

方案1:调整JDBC连接参数(优先使用)

Mirth读取的数据库连接参数优先级高于全局加密配置,需在mirth.properties的MySQL连接URL中显式指定TLS协议:

database.url = jdbc:mysql://<MySQL_IP>:3306/<mirth库名>?useSSL=true&enabledTLSProtocols=TLSv1.2

若内网环境无需SSL加密,可直接关闭SSL避免协议匹配问题:

database.url = jdbc:mysql://<MySQL_IP>:3306/<mirth库名>?useSSL=false&allowPublicKeyRetrieval=true

修改后重启Mirth服务验证是否恢复。

方案2:对齐加密套件配置

若必须开启SSL,需先查询MySQL支持的加密套件列表:

SHOW STATUS LIKE 'Ssl_cipher_list';

将查询结果中的套件列表,替换你当前mirth.properties中https.cipherSuites的配置值,确保双方套件完全匹配后重启服务。

方案3:修改JDK禁用协议规则

Mirth运行依赖的JDK默认会禁用低版本TLS协议,需编辑JDK目录下的jre/lib/security/java.security文件,找到jdk.tls.disabledAlgorithms配置项,删除其中的TLSv1、TLSv1.1条目,保存后重启Mirth服务即可。


内容的提问来源于stack exchange,提问作者Vibin Guevara

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 11:27:01