Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

PostgreSQL 字典源

设置示例:

SOURCE(POSTGRESQL(
    port 5432
    host 'postgresql-hostname'
    user 'postgres_user'
    password 'postgres_password'
    db 'db_name'
    table 'table_name'
    replica(host 'example01-1' port 5432 priority 1)
    replica(host 'example01-2' port 5432 priority 2)
    where 'id=10'
    invalidate_query 'SQL_QUERY'
    query 'SELECT id, value_1, value_2 FROM db_name.table_name'
))

设置字段:

Setting Description
host PostgreSQL 服务器的主机地址。您可以为所有副本统一指定,也可以为每个副本单独指定 (在 <replica> 内) 。
port PostgreSQL 服务器的端口。您可以为所有副本统一指定,也可以为每个副本单独指定 (在 <replica> 内) 。
user PostgreSQL 用户名。您可以为所有副本统一指定,也可以为每个副本单独指定 (在 <replica> 内) 。
password PostgreSQL 用户密码。您可以为所有副本统一指定,也可以为每个副本单独指定 (在 <replica> 内) 。
replica 副本配置节。可以有多个此类配置节。
replica/host PostgreSQL 主机地址。
replica/port PostgreSQL 端口。
replica/priority 副本优先级。尝试连接时,ClickHouse 会按优先级顺序遍历各副本。数字越小,优先级越高。
db 数据库名称。
table 表名称。
where 筛选条件。其语法与 PostgreSQL 中 WHERE 子句的语法相同。例如,id > 10 AND id < 20。可选。
invalidate_query 用于检查字典状态的查询。可选。更多信息请参见使用 LIFETIME 刷新字典数据一节。
background_reconnect 如果连接失败,则在后台重新连接到副本。可选。
query 自定义查询。可选。
sslmode 传递给 libpq 的 TLS/SSL 模式:disableallowpreferrequireverify-caverify-full。未设置时,使用 libpq 的默认值 prefer。可选。
sslrootcert_pem 用于验证 PostgreSQL 服务器证书的 CA 证书内容。可选。
sslcert_pem 用于基于证书的身份验证的客户端证书内容。可选。
sslkey_pem sslcert_pem 对应的私钥内容。可选。
sslrootcert, sslcert, sslkey 与上述相同的凭据,但以服务器上文件路径的形式提供。仅允许用于在服务器配置文件中定义的字典,或通过其中定义的命名集合使用,详见下文。可选。
Navigation