> ## Documentation Index
> Fetch the complete documentation index at: https://clickhouse.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

> Documentação do utilitário cliente do ClickHouse Keeper

# utilitário clickhouse-keeper-client

Um aplicativo cliente para interagir com o clickhouse-keeper por meio do protocolo nativo.

<div id="clickhouse-keeper-client">
  ## Parâmetros
</div>

* `-q QUERY`, `--query=QUERY` — Consulta a ser executada. Se esse parâmetro não for informado, o `clickhouse-keeper-client` será iniciado em modo interativo.
* `-h HOST`, `--host=HOST` — Host do servidor. Valor padrão: `localhost`.
* `-p N`, `--port=N` — Porta do servidor. Valor padrão: 9181
* `-c FILE_PATH`, `--config-file=FILE_PATH` — Define o caminho do arquivo de configuração para obter a string de conexão. Valor padrão: `config.xml`.
* `--password=PASSWORD` — Senha para autenticação. Também pode ser definida pela variável de ambiente `CLICKHOUSE_KEEPER_PASSWORD` ou no arquivo de configuração XML em `<zookeeper><password>`.
* `--identity=IDENTITY` — Identidade para o esquema de autenticação `digest`. Também pode ser definida pela variável de ambiente `CLICKHOUSE_KEEPER_IDENTITY` ou no arquivo de configuração XML em `<zookeeper><identity>`.
* `--connection-timeout=TIMEOUT` — Define o tempo limite de conexão em segundos. Valor padrão: 10s.
* `--session-timeout=TIMEOUT` — Define o tempo limite da sessão em segundos. Valor padrão: 10s.
* `--operation-timeout=TIMEOUT` — Define o tempo limite da operação em segundos. Valor padrão: 10s.
* `--history-file=FILE_PATH` — Define o caminho do arquivo de histórico. Valor padrão: `~/.keeper-client-history`.
* `--log-level=LEVEL` — Define o nível de log. Valor padrão: `information`.
* `--no-confirmation` — Se definido, não exigirá confirmação para vários comandos. O valor padrão é `false` no modo interativo e `true` para consulta
* `--help` — Exibe a mensagem de ajuda.

<div id="clickhouse-keeper-client-env">
  ## Variáveis de ambiente
</div>

* `CLICKHOUSE_KEEPER_PASSWORD` — Usada como senha padrão caso `--password` não seja fornecido na linha de comando.
* `CLICKHOUSE_KEEPER_IDENTITY` — Usada como identidade padrão caso `--identity` não seja fornecido na linha de comando.

<div id="clickhouse-keeper-client-auth">
  ## Autenticação
</div>

Ao se conectar a um servidor Keeper que exige autenticação, a senha é obtida na seguinte ordem de prioridade (a primeira correspondência é usada):

1. argumento de linha de comando `--password`
2. variável de ambiente `CLICKHOUSE_KEEPER_PASSWORD`
3. `<zookeeper><password>` no arquivo de configuração XML especificado por `--config-file`

A mesma ordem de prioridade se aplica a `--identity` / `CLICKHOUSE_KEEPER_IDENTITY` / `<zookeeper><identity>`.

Exemplo de arquivo de configuração XML com definições de autenticação:

```xml theme={null}
<clickhouse>
    <zookeeper>
        <password>secret</password>
        <node index="1">
            <host>localhost</host>
            <port>9181</port>
        </node>
    </zookeeper>
</clickhouse>
```

<div id="clickhouse-keeper-client-example">
  ## Exemplo
</div>

```bash theme={null}
./clickhouse-keeper-client -h localhost -p 9181 --connection-timeout 30 --session-timeout 30 --operation-timeout 30
Connected to ZooKeeper at [::1]:9181 with session_id 137
/ :) ls
keeper foo bar
/ :) cd 'keeper'
/keeper :) ls
api_version
/keeper :) cd 'api_version'
/keeper/api_version :) ls

/keeper/api_version :) cd 'xyz'
Path /keeper/api_version/xyz does not exist
/keeper/api_version :) cd ../../
/ :) ls
keeper foo bar
/ :) get 'keeper/api_version'
2
```

<div id="clickhouse-keeper-client-commands">
  ## Comandos
</div>

* `ls '[path]' [watch_id]` -- Lista os nós do caminho especificado (padrão: cwd). Opcionalmente, define um watch de filhos identificado por `watch_id`
* `cd '[path]'` -- Altera o caminho de trabalho (padrão `.`)
* `cp '<src>' '<dest>'`  -- Copia o nó 'src' para o caminho 'dest'
* `cpr '<src>' '<dest>'`  -- Copia a subárvore do nó 'src' para o caminho 'dest'
* `mv '<src>' '<dest>'`  -- Move o nó 'src' para o caminho 'dest'
* `mvr '<src>' '<dest>'`  -- Move a subárvore do nó 'src' para o caminho 'dest'
* `exists '<path>' [watch_id]` -- Retorna `1` se o nó existir, `0` caso contrário. Opcionalmente, define um watch identificado por `watch_id`
* `set '<path>' <value> [version]` -- Atualiza o valor do nó. Só atualiza se a versão corresponder (padrão: -1)
* `create '<path>' <value> [mode]` -- Cria um novo nó com o valor especificado
* `touch '<path>'` -- Cria um novo nó com uma string vazia como valor. Não gera uma exceção se o nó já existir
* `get '<path>' [watch_id]` -- Retorna o valor do nó. Opcionalmente, define um watch de dados identificado por `watch_id`
* `watch <watch_id> [timeout_seconds]` -- Aguarda o evento de watch identificado por `watch_id` e imprime o tipo de evento e o caminho. Se `timeout_seconds` for especificado, retorna um erro após o tempo limite informado
* `rm '<path>' [version]` -- Remove o nó somente se a versão corresponder (padrão: -1)
* `rmr '<path>' [limit]` -- Exclui o caminho recursivamente se o tamanho da subárvore for menor que o limite. Confirmação obrigatória (limite padrão = 100)
* `flwc <command>` -- Executa o comando de quatro letras
* `help` -- Exibe esta mensagem
* `get_direct_children_number '[path]'` -- Obtém o número de nós filhos diretos em um caminho específico
* `get_all_children_number '[path]'` -- Obtém o número total de nós filhos em um caminho específico
* `get_stat '[path]'` -- Retorna as estatísticas do nó (padrão `.`)
* `find_super_nodes <threshold> '[path]'` -- Encontra nós com número de filhos acima de um determinado limite no caminho especificado (padrão `.`)
* `delete_stale_backups` -- Exclui nós do ClickHouse usados para backups que agora estão inativos
* `find_big_family [path] [n]` -- Retorna os n principais nós com a maior família na subárvore (caminho padrão = `.` e n = 10)
* `sync '<path>'` -- Sincroniza o nó entre processos e o líder
* `reconfig <add|remove|set> "<arg>" [version]` -- Reconfigura o cluster Keeper. Consulte /docs/en/guides/sre/keeper/clickhouse-keeper#reconfiguration
