Instalação
Execute
Se você apenas baixou o ClickHouse, mas não o instalou, use
./clickhouse client em vez de clickhouse-client.
Para ver a lista completa de opções de linha de comando, consulte Opções de linha de comando.
Conectar ao ClickHouse Cloud
Escolha Native, e os detalhes serão exibidos junto com um exemplo de comando
clickhouse-client:
Armazenando conexões em um arquivo de configuração
Para focar na sintaxe da consulta, os exemplos a seguir omitem os detalhes da conexão (
--host, --port etc.). Lembre-se de adicioná-los ao usar os comandos.Modo interativo
Usando o modo interativo
PrettyCompact.
Você pode alterar o formato na cláusula FORMAT da consulta ou especificando a opção de linha de comando --format.
Para usar o formato Vertical, você pode usar --vertical ou especificar \G ao final da consulta.
Nesse formato, cada valor é impresso em uma linha separada, o que é conveniente para tabelas com muitas colunas.
No modo interativo, por padrão, tudo o que for digitado é executado quando você pressiona Enter.
Não é necessário usar ponto e vírgula ao final da consulta.
Você pode iniciar o cliente com o parâmetro -m, --multiline.
Para inserir uma consulta de várias linhas, digite uma barra invertida \ antes da quebra de linha.
Depois de pressionar Enter, será solicitado que você digite a próxima linha da consulta.
Para executar a consulta, finalize-a com um ponto e vírgula e pressione Enter.
O ClickHouse Client é baseado em replxx (semelhante ao readline), portanto usa atalhos de teclado familiares e mantém um histórico.
O histórico é gravado em ~/.clickhouse-client-history por padrão.
Para sair do cliente, pressione Ctrl+D ou digite um dos seguintes comandos em vez de uma consulta:
exitouexit;quitouquit;q,Qou:qlogoutoulogout;
Informações sobre o processamento de consultas
- Progress, que por padrão é atualizado no máximo 10 vezes por segundo. Em consultas rápidas, pode não haver tempo para que o progresso seja exibido.
- A consulta formatada após o parsing, para depuração.
- O resultado no formato especificado.
- O número de linhas no resultado, o tempo decorrido e a velocidade média de processamento da consulta. Todos os volumes de dados se referem a dados não comprimidos.
Ctrl+C.
No entanto, ainda será necessário aguardar um pouco até que o servidor interrompa a solicitação.
Não é possível cancelar uma consulta em determinadas etapas.
Se você não aguardar e pressionar Ctrl+C uma segunda vez, o cliente será encerrado.
O ClickHouse Client permite fornecer dados externos (tabelas temporárias externas) para consultas.
Para mais informações, consulte a seção Dados externos para processamento de consultas.
Aliases
\l- SHOW DATABASES\d- SHOW TABLES\c <DATABASE>- USE DATABASE.- repete a última consulta
Atalhos de teclado
Alt (Option) + Shift + e- abre o editor com a consulta atual. É possível especificar qual editor usar com a variável de ambienteEDITOR. Por padrão, é usado ovim.Alt (Option) + #- comenta a linha.Ctrl + r- pesquisa difusa no histórico.
Modo em lote
Usando o modo em lote
--query:
stdin:
messages, você também pode inserir dados pela linha de comando:
--query é especificado, toda entrada é anexada à requisição após uma quebra de linha.
Inserindo um arquivo CSV em um serviço remoto do ClickHouse
cell_towers.csv, em uma tabela existente, cell_towers, no banco de dados default:
Exemplos de inserção de dados pela linha de comando
cat <<_EOF inicia um heredoc que lê tudo até encontrar _EOF novamente e então exibe o conteúdo:
cat e redirecionado para clickhouse-client como entrada:
TabSeparated.
Você pode definir o formato na cláusula FORMAT da consulta, conforme mostrado no exemplo acima.
Consultas com parâmetros
Sintaxe da consulta
Exemplos
Geração de SQL com IA
OPENAI_API_KEY ou ANTHROPIC_API_KEY. Para configurações mais avançadas, consulte a seção Configuração.
Uso
?? à sua consulta em linguagem natural:
- Explorar automaticamente o esquema do seu banco de dados
- Gerar SQL adequado com base nas tabelas e colunas encontradas
- Executar a consulta gerada imediatamente
Exemplo
Configuração
Fallback baseado em variáveis de ambiente
- Primeiro, verifica a variável de ambiente
OPENAI_API_KEY - Se não a encontrar, verifica a variável de ambiente
ANTHROPIC_API_KEY - Se não encontrar nenhuma das duas, os recursos de IA serão desativados
Arquivo de configuração
$XDG_CONFIG_HOME/clickhouse/config.xml(ou~/.config/clickhouse/config.xmlseXDG_CONFIG_HOMEnão estiver definido) (formato XML)$XDG_CONFIG_HOME/clickhouse/config.yaml(ou~/.config/clickhouse/config.yamlseXDG_CONFIG_HOMEnão estiver definido) (formato YAML)~/.clickhouse-client/config.xml(formato XML, local legado)~/.clickhouse-client/config.yaml(formato YAML, local legado)- Ou especifique um local personalizado com
--config-file
- XML
- YAML
Usando APIs compatíveis com OpenAI (por exemplo, OpenRouter):
Parâmetros
Parâmetros obrigatórios
Parâmetros obrigatórios
api_key- Sua chave de API para o serviço de IA. Pode ser omitida se estiver definida em uma variável de ambiente:- OpenAI:
OPENAI_API_KEY - Anthropic:
ANTHROPIC_API_KEY - Observação: a chave de API no arquivo de configuração tem prioridade sobre a variável de ambiente
- OpenAI:
provider- O provedor de IA:openaiouanthropic- Se omitido, usa fallback automático com base nas variáveis de ambiente disponíveis
Configuração do modelo
Configuração do modelo
model- O modelo a ser usado (padrão: específico do provedor)- OpenAI:
gpt-4o,gpt-4,gpt-3.5-turbo, etc. - Anthropic:
claude-3-5-sonnet-20241022,claude-3-opus-20240229, etc. - OpenRouter: use a nomenclatura de modelo deles, como
anthropic/claude-3.5-sonnet
- OpenAI:
Configurações de conexão
Configurações de conexão
base_url- Endpoint de API personalizado para serviços compatíveis com OpenAI (opcional)timeout_seconds- Tempo limite da solicitação, em segundos (padrão:30)
Exploração de esquema
Exploração de esquema
enable_schema_access- Permite que a IA explore os esquemas do banco de dados (padrão:true)max_steps- Número máximo de passos de chamada de ferramenta para explorar esquemas (padrão:10)
Parâmetros de geração
Parâmetros de geração
temperature- Controla o nível de aleatoriedade: 0.0 = determinístico, 1.0 = criativo (padrão:0.0)max_tokens- Comprimento máximo da resposta em tokens (padrão:1000)system_prompt- Instruções personalizadas para a IA (opcional)
Como funciona
- Descoberta do esquema
- Lista os bancos de dados disponíveis
- Descobre as tabelas nos bancos de dados relevantes
- Examina a estrutura das tabelas por meio de instruções
CREATE TABLE
- Geração de consultas
- Corresponde à sua intenção em linguagem natural
- Usa os nomes corretos de tabelas e colunas
- Aplica junções e agregações apropriadas
- Execução
Limitações
- Requer uma conexão ativa com a internet
- O uso da API está sujeito a limites de taxa e custos do provedor de IA
- Consultas complexas podem exigir vários refinamentos
- A IA tem acesso somente leitura às informações de esquema, não aos dados reais
Segurança
- As chaves de API nunca são enviadas aos servidores do ClickHouse
- A IA vê apenas informações do esquema (nomes de tabelas/colunas e tipos), não os dados reais
- Todas as consultas geradas respeitam as permissões existentes do seu banco de dados
String de conexão
Uso
Observações
--user, --password ou --database (e vice-versa).
O componente de host pode ser um hostname ou um endereço IPv4 ou IPv6.
Endereços IPv6 devem estar entre []:
clickHouse-client.
A string de conexão pode ser combinada com um número arbitrário de outras opções de linha de comando, exceto --host e --port.
As seguintes chaves são permitidas para query_parameters:
Codificação percentual
Caracteres fora do conjunto ASCII dos EUA, espaços e caracteres especiais nos parâmetros a seguir devem ser codificados em percentual:
userpasswordhostsdatabasequery parameters
Exemplos
localhost na porta 9000 e execute a consulta SELECT 1.
localhost como o usuário john, com a senha secret, o host 127.0.0.1 e a porta 9000
localhost como o usuário default, no host com endereço IPv6 [::1] e porta 9000.
localhost pela porta 9000 no modo multilinha.
localhost pela porta 9000 com o usuário default.
localhost pela porta 9000 e use o banco de dados my_database como padrão.
localhost na porta 9000, use por padrão o banco de dados my_database especificado na string de conexão e estabeleça uma conexão segura com o parâmetro abreviado s.
my_user e sem senha.
localhost usando o email como nome de usuário. O símbolo @ é codificado em formato percentual como %40.
192.168.1.15, 192.168.1.25.
Formato do ID da consulta
query_id_formats. O placeholder {query_id} na string de formato é substituído pelo ID da consulta. São permitidas várias strings de formato dentro da tag.
Esse recurso pode ser usado para gerar URLs e facilitar a análise de desempenho de consultas.
Exemplo
Arquivos de configuração
- Um arquivo definido pelo parâmetro
-c [ -C, --config, --config-file ]. ./clickhouse-client.[xml|yaml|yml]$XDG_CONFIG_HOME/clickhouse/config.[xml|yaml|yml](ou~/.config/clickhouse/config.[xml|yaml|yml]seXDG_CONFIG_HOMEnão estiver definido)~/.clickhouse-client/config.[xml|yaml|yml]/etc/clickhouse-client/config.[xml|yaml|yml]
clickhouse-client.xml
- XML
- YAML
Opções de variáveis de ambiente
CLICKHOUSE_USER, CLICKHOUSE_PASSWORD e CLICKHOUSE_HOST.
Os argumentos de linha de comando --user, --password ou --host, ou uma string de conexão (se especificada), têm prioridade sobre as variáveis de ambiente.
Opções de linha de comando
Opções gerais
Opções de conexão
Em vez das opções
--host, --port, --user e --password, o cliente também oferece suporte a strings de conexão.