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

如何通过Liquibase CLI实现TLS加密的数据库连接并执行变更

Liquibase CLI 配置TLS加密数据库连接方案

Liquibase CLI底层基于Java运行,和业务服务的Java TLS连接逻辑完全一致,只需要将Keystore、Truststore配置传入Liquibase运行时的JVM即可,以下是两种常用配置方案:

方式1:执行命令时直接传入JVM参数

无需修改全局配置,单次执行时传入参数即可,以MySQL为例,其他数据库仅需调整对应JDBC的SSL连接参数:

JAVA_OPTS="-Djavax.net.ssl.keyStore=/path/to/your/keystore.jks \
-Djavax.net.ssl.keyStorePassword=你的keystore密码 \
-Djavax.net.ssl.trustStore=/path/to/your/truststore.jks \
-Djavax.net.ssl.trustStorePassword=你的truststore密码" \
liquibase update \
--url="jdbc:mysql://数据库地址:端口/库名?useSSL=true&requireSSL=true&verifyServerCertificate=true" \
--username=数据库账号 \
--password=数据库密码 \
--changelog-file=changelog.xml

不同数据库JDBC URL的SSL必填参数参考:

  • MySQL:useSSL=true&requireSSL=true&verifyServerCertificate=true
  • PostgreSQL:ssl=true&sslmode=verify-full
  • Oracle:oracle.net.ssl_server_dn_match=true

方式2:配置全局默认参数(适合多变更场景复用)

修改Liquibase本地配置,后续执行命令无需重复传参:

  1. 找到Liquibase安装目录下的liquibase.properties文件,新增数据库连接配置:
url: jdbc:mysql://数据库地址:端口/库名?useSSL=true&requireSSL=true&verifyServerCertificate=true
username: 数据库账号
password: 数据库密码
changelog-file: changelog.xml
  1. 在同目录下新建liquibase.env文件,写入JVM SSL参数:
JAVA_OPTS=-Djavax.net.ssl.keyStore=/path/to/your/keystore.jks -Djavax.net.ssl.keyStorePassword=你的keystore密码 -Djavax.net.ssl.trustStore=/path/to/your/truststore.jks -Djavax.net.ssl.trustStorePassword=你的truststore密码
  1. 配置完成后直接执行liquibase update即可自动加载TLS参数完成变更。

Docker镜像运行的额外配置

如果使用官方Liquibase Docker镜像执行操作,需要额外将本地JKS文件挂载到容器内:

docker run -v /本地JKS目录:/容器内JKS目录 \
-v /本地changelog目录:/changelog \
-e JAVA_OPTS="-Djavax.net.ssl.keyStore=/容器内JKS目录/keystore.jks -Djavax.net.ssl.keyStorePassword=你的keystore密码 -Djavax.net.ssl.trustStore=/容器内JKS目录/truststore.jks -Djavax.net.ssl.trustStorePassword=你的truststore密码" \
liquibase/liquibase update

常见排错点

  • JKS文件必须使用绝对路径,确认Liquibase进程有文件读取权限
  • JKS密码含特殊字符时,需要用单引号包裹或者添加转义符
  • 生成JKS的JDK版本需要和Liquibase运行依赖的JDK版本一致,避免格式不兼容
  • 自签名证书必须提前导入到Truststore中,否则会触发证书校验失败错误

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 15:54:07