Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

Fonte de dicionário do MySQL

Exemplo de configurações:

SOURCE(MYSQL(
    port 3306
    user 'clickhouse'
    password 'qwerty'
    replica(host 'example01-1' priority 1)
    replica(host 'example01-2' priority 1)
    db 'db_name'
    table 'table_name'
    where 'id=10'
    invalidate_query 'SQL_QUERY'
    fail_on_connection_loss 'true'
    query 'SELECT id, value_1, value_2 FROM db_name.table_name'
    enable_compression 1
))

Campos de configuração:

Configuração Descrição
port A porta no servidor MySQL. Você pode especificá-la para todas as réplicas ou para cada uma individualmente (dentro de <replica>).
user Nome do usuário do MySQL. Você pode especificá-lo para todas as réplicas ou para cada uma individualmente (dentro de <replica>).
password Senha do usuário do MySQL. Você pode especificá-la para todas as réplicas ou para cada uma individualmente (dentro de <replica>).
replica Seção de configuração da réplica. Pode haver várias seções.
replica/host O host do MySQL.
replica/priority A prioridade da réplica. Ao tentar se conectar, o ClickHouse percorre as réplicas em ordem de prioridade. Quanto menor o número, maior a prioridade.
db Nome do banco de dados.
table Nome da tabela.
where O critério de seleção. A sintaxe das condições é a mesma da cláusula WHERE no MySQL, por exemplo, id > 10 AND id < 20. Opcional.
invalidate_query Consulta para verificar o status do dicionário. Opcional. Leia mais na seção Atualizando os dados do dicionário usando LIFETIME.
fail_on_connection_loss Controla o comportamento do servidor em caso de perda de conexão. Se true, uma exceção é lançada imediatamente se a conexão entre cliente e servidor for perdida. Se false, o servidor tenta buscar os dados novamente pelo menos três vezes antes de relatar um erro. Observe que as tentativas de repetição aumentam o tempo de resposta. Valor padrão: false.
query A consulta personalizada. Opcional.
enable_compression Habilita a compressão zlib para a conexão do protocolo MySQL. Quando definido como 1, o ClickHouse solicita compressão no nível do protocolo ao servidor MySQL. Também pode ser definido por réplica dentro de <replica>. Valor padrão: 0.
ssl_ca_pem Conteúdo do certificado da CA usado para verificar o certificado do servidor MySQL. Opcional.
ssl_cert_pem Conteúdo do certificado do cliente, para autenticação baseada em certificado. Opcional.
ssl_key_pem Conteúdo da chave privada associada a ssl_cert_pem. Opcional.
ssl_ca, ssl_cert, ssl_key As mesmas credenciais, como caminhos para arquivos no servidor. Permitido apenas para um dicionário definido em um arquivo de configuração do servidor ou por meio de uma coleção nomeada definida nele; veja abaixo. Opcional.

É possível conectar-se ao MySQL em um host local via sockets. Para isso, defina host e socket.

Exemplo de configurações:

SOURCE(MYSQL(
    host 'localhost'
    socket '/path/to/socket/file.sock'
    user 'clickhouse'
    password 'qwerty'
    db 'db_name'
    table 'table_name'
    where 'id=10'
    invalidate_query 'SQL_QUERY'
    fail_on_connection_loss 'true'
    query 'SELECT id, value_1, value_2 FROM db_name.table_name'
))
Navigation