GoCD数据库连接属性
本节描述了GoCD服务器将连接和使用的外部数据库服务器(如PostgreSQL、MySQL)的配置属性。可选地,您还可以指定数据库SSL配置属性,以确保GoCD与数据库服务器之间的安全通信。
需要在 GoCD 的配置目录中创建一个名为db.properties
的属性文件(config/
)。GoCD的配置目录位置因操作系统而异。请参考GoCD服务器文件的位置以了解 GoCD 服务器配置目录的位置。
配置文件中的有效键如下所述:
键 | 描述 |
---|---|
db.driver |
根据数据库选择的JDBC数据库驱动程序。例如:org.postgresql.Driver 如果使用PostgreSQL或com.mysql.cj.jdbc.Driver 对于MySQL。必填项: Yes 默认值: none |
db.url |
数据库连接URL。请以以下格式指定URL:jdbc:databaseType://server[:port]/databaseName . 其中, databaseType 为数据库类型(示例:h2 , postgresql , mysql );server[:port] 为托管您的数据库的服务器名称及可选端口,databaseName 为数据库名称。例如,URL jdbc:postgresql://localhost:5432/cruise 表示本地运行的名为cruise . 必填项: Yes 默认值: none . |
db.user |
GoCD应使用连接到模式的数据库用户。 必填项: Yes 默认值: none |
db.password |
由“db.user”属性指定的GoCD应使用的模式连接密码。 必填项: No 默认值: none |
db.encryptedPassword |
由“db.user”属性指定的GoCD应使用的模式连接加密密码。GoCD将在使用前通过GoCD密码文件解密指定的加密密码。注意:用户应指定db.password 或db.encryptedPassword .必填项: No 默认值: none . |
db.maxActive |
应与数据库服务器建立的最大活动连接数。 必填项: No 默认值:32 |
db.maxIdle |
应与数据库服务器保持的最大空闲连接数。 必填项: No 默认值:32 |
db.extraBackupCommandArgs |
指定自定义数据库备份参数。此配置属性用于在使用一键备份GoCD功能备份数据库时,指定附加环境变量给备份工具。更多信息,请参阅GoCD数据库额外备份命令参数获取更多信息。 必填项: No 默认值: none |
db.extraBackupEnv |
指定自定义环境变量给数据库备份工具。此配置属性用于在使用一键备份GoCD功能备份数据库时,指定附加环境变量给备份工具。更多信息,请参阅GoCD数据库额外备份环境变量获取更多信息。 必填项: No 默认值: none |
db.connectionProperties |
指定数据库SSL配置属性,以实现GoCD与数据库服务器之间的安全通信。更多信息,请参阅数据库特定连接属性获取更多信息。 必填项: No 默认值: none |
GoCD数据库额外备份命令参数
The 一键备份GoCD的功能同时备份配置和数据库。根据数据库类型,可以指定附加参数,这些参数将由GoCD在备份数据库时使用的底层实用程序使用。
GoCD使用pg_dump工具来备份PostgreSQL数据库。请参阅pg_dump文档了解所有可用的PostgreSQL数据库备份选项。
示例:
指定db.extraBackupCommandArgs=--format=plain
属性以指定--format=plain
选项给pg_dump
备份工具,这会导致生成纯文本备份。
GoCD使用mysqldump工具来备份MySQL数据库。请参阅mysqldump文档了解所有可用的MySQL数据库备份选项。
示例:
指定db.extraBackupCommandArgs=--compact
属性以指定--compact
选项给mysqldump
备份工具,这会产生更紧凑的输出。
GoCD数据库额外备份环境变量
The 一键备份GoCD的功能同时备份配置和数据库。根据数据库类型,可以指定附加环境变量,这些变量将由GoCD在备份数据库时使用的底层实用程序使用。
查看PostgreSQL环境变量和MySQL环境变量了解pg_dump和mysqldump工具分别使用的环境变量集。
示例:
指定db.extraBackupEnv.PGCLIENTENCODING=UTF8
属性以指定PGCLIENTENCODING
环境变量并赋值UTF8
.
数据库特定连接属性
指定db.connectionProperties
加密GoCD服务器应用程序和数据库实例之间的通信。根据数据库服务器的类型,可以为SSL配置指定不同的连接属性。
1. PostgreSQL SSL配置:
PostgreSQL应用程序使用libpq
作为与PostgreSQL服务器进行底层通信的接口。
为了配置PostgreSQL数据库SSL:
- 查看libpq SSL支持文档。
- 参见libpq连接参数查看所有可用选项。
以下是PostgreSQL SSL连接属性的示例:
db.connectionProperties.sslmode=verify-full
db.connectionProperties.sslcert=/var/lib/go-server/client-cert.pem
db.connectionProperties.sslkey=/var/lib/go-server/client-key.pem
db.connectionProperties.sslrootcert=/var/lib/go-server/ca.pem
db.connectionProperties.sslcrl=/var/lib/go-server/root.crl
2. MySQL SSL配置:
查看MySQL加密连接命令选项文档以了解所有用于配置与服务器加密连接的选项。
以下是MySQL SSL连接属性的示例:
db.connectionProperties.ssl-mode=verify-full
db.connectionProperties.ssl-cert=/var/lib/go-server/client-cert.pem
db.connectionProperties.ssl-key=/var/lib/go-server/client-key.pem
db.connectionProperties.ssl-ca=/var/lib/go-server/ca.pem
db.connectionProperties.ssl-crl=/var/lib/go-server/root.crl