# finalização do banco de dados

\[Conexão] Etapas finais na criação de banco de dados.

> \[!NOTE]
> Este conteúdo descreve a versão mais recente do CodeQL CLI. Para obter mais informações sobre essa versão, confira <https://github.com/github/codeql-cli-binaries/releases>.
>
> Para ver os detalhes das opções disponíveis para esse comando em uma versão anterior, execute o comando com a opção <span style="white-space: nowrap;">`--help`</span> no terminal.

## Sinopse

```shell copy
codeql database finalize [--dbscheme=<file>] [--threads=<num>] [--ram=<MB>] <options>... -- <database>
```

## Description

```
          \[Conexão] Etapas finais na criação de banco de dados.
```

Finalize um banco de dados que foi criado com [codeql database init](/pt/code-security/reference/code-scanning/codeql/codeql-cli-manual/database-init) e, posteriormente, propagado com os dados da análise usando [codeql database trace-command](/pt/code-security/reference/code-scanning/codeql/codeql-cli-manual/database-trace-command). Isso precisa acontecer antes que o novo banco de dados possa ser consultado.

## Opções

### Opções principais

#### `<database>`

```
          \[Obrigatório] Caminho para o banco de dados CodeQL em construção. Isso precisa ter sido preparado para extração com [codeql database init](/code-security/reference/code-scanning/codeql/codeql-cli-manual/database-init).
```

Se a opção `--db-cluster` for fornecida, esse não será um banco de dados propriamente dito, mas um diretório que *contém* bancos de dados, e todos esses bancos de dados serão processados juntos.

#### `--[no-]db-cluster`

Indica que o diretório fornecido na linha de comando não é um banco de dados propriamente dito, mas um diretório que *contém* um ou mais bancos de dados em construção. Esses bancos de dados serão processados juntos.

#### `--additional-dbs=<database>[:<database>...]`

```
          \[Avançado] Caminho para bancos de dados CodeQL adicionais em construção.
```

Eles não serão finalizados, mas os dados deles serão incluídos no banco de dados finalizado que está sendo criado. Essa é uma opção avançada que pode não ter o efeito desejado em todos os casos. Para obter mais informações, confira a documentação de [codeql database import](/pt/code-security/reference/code-scanning/codeql/codeql-cli-manual/database-import).

Se a opção `--db-cluster` for fornecida, será esperado que eles sejam clusters de banco de dados em vez de bancos de dados CodeQL individuais.

(Observação: no Windows, o separador de caminho é `;`).

#### `--no-cleanup`

```
          \[Avançado] Suprima toda a limpeza do banco de dados após a finalização. Útil para fins de depuração.
```

#### `--no-pre-finalize`

```
          \[Avançado] Ignore todos os scripts de pré-finalização especificados pelo extrator ativo do CodeQL.
```

#### `--[no-]skip-empty`

```
          \[Avançado] Gere um aviso em vez de causar uma falha se um banco de dados estiver vazio devido a nenhum código-fonte ter sido visto durante o build. O banco de dados vazio será deixado sem finalização.
```

### Opções para controlar a operação de importação de TRAP

#### `-S, --dbscheme=<file>`

```
          \[Avançado] Substitua a definição de dbscheme detectada automaticamente a qual os arquivos TRAP devem seguir. Normalmente, isso é obtido do extrator do banco de dados.
```

#### `-j, --threads=<num>`

Use esse número de threads para a operação de importação.

O valor padrão é 1. Você pode transmitir 0 para usar um thread por núcleo no computador ou -*N* para manter *N* núcleos não utilizados (com a exceção de que ainda será usado, pelo menos, um thread).

#### `-M, --ram=<MB>`

Use essa quantidade de memória para a operação de importação.

### Opções de limpeza de conjunto de dados de baixo nível

#### `--max-disk-cache=<MB>`

Defina a quantidade máxima de espaço que pode ser usada pelo cache de disco para os resultados intermediários da consulta.

Se esse tamanho não for configurado explicitamente, o avaliador tentará usar uma quantidade "razoável" de espaço em cache, com base no tamanho do conjunto de dados e na complexidade das consultas. Se você definir explicitamente um limite mais alto do que esse uso padrão, isso habilitará o cache adicional, que pode acelerar as consultas posteriores.

#### `--min-disk-free=<MB>`

```
          \[Avançado] Defina a quantidade de destino de espaço livre no sistema de arquivos.
```

Se `--max-disk-cache` não for fornecido, o avaliador tentará reduzir o uso do cache de disco se o espaço livre no sistema de arquivos ficar abaixo desse valor.

#### `--min-disk-free-pct=<pct>`

```
          \[Avançado] Defina a fração de destino de espaço livre no sistema de arquivos.
```

Se `--max-disk-cache` não for fornecido, o avaliador tentará reduzir o uso do cache de disco se o espaço livre no sistema de arquivos ficar abaixo desse percentual.

#### `--cache-cleanup=<mode>`

Selecione o nível de agressividade de corte do cache. As opções incluem:

```
          `clear`: remova todo o cache, reduzindo-o ao estado de um conjunto de dados recém-extraído

          `trim`
          _(padrão)_ : corte tudo, exceto os predicados explicitamente "armazenados em cache".

          `fit`: verifique se os limites de tamanho definidos para o cache de disco são observados, excluindo quantos intermediários forem necessários.

          `overlay`: corte apenas os dados que serão úteis ao avaliar uma sobreposição.
```

#### `--cleanup-upgrade-backups`

Exclua todos os diretórios de backup resultantes das atualizações de banco de dados.

### Opções para verificar o TRAP importado

#### `--[no-]check-undefined-labels`

```
          \[Avançado] Relate os erros de rótulos indefinidos.
```

#### `--[no-]check-unused-labels`

```
          \[Avançado] Relate os erros de rótulos não utilizados.
```

#### `--[no-]check-repeated-labels`

```
          \[Avançado] Relate os erros de rótulos repetidos.
```

#### `--[no-]check-redefined-labels`

```
          \[Avançado] Relate os erros de rótulos redefinidos.
```

#### `--[no-]check-use-before-definition`

```
          \[Avançado] Relate os erros de rótulos usados antes de serem definidos.
```

#### `--[no-]fail-on-trap-errors`

```
          \[Avançado] Gere uma saída diferente de zero se ocorrer um erro durante a importação do TRAP.
```

#### `--[no-]include-location-in-star`

```
          \[Avançado] Construa IDs de entidade que codificam o local no arquivo TRAP de origem. Pode ser útil para a depuração de geradores TRAP, mas ocupa muito espaço no conjunto de dados.
```

#### `--[no-]linkage-aware-import`

```
          \[Avançado] Controla se a [importação do conjunto de dados codeql](/code-security/reference/code-scanning/codeql/codeql-cli-manual/dataset-import) é compatível com vinculação _(padrão)_ ou não. Em projetos em que essa parte da criação de banco de dados consome muita memória, desabilitar essa opção pode ajudá-los a progredir às custas da integridade do banco de dados.
```

Disponível desde `v2.15.3`.

### Opções comuns

#### `-h, --help`

Mostre este texto de ajuda.

#### `-J=<opt>`

```
          \[Avançado] Forneça a opção para a JVM que executa o comando.
```

(Use-a com cautela, pois as opções que contêm espaços não serão tratadas corretamente.)

#### `-v, --verbose`

Aumente de forma incremental o número de mensagens de progresso impressas.

#### `-q, --quiet`

Diminua incrementalmente o número de mensagens de progresso impressas.

#### `--verbosity=<level>`

```
          \[Avançado] Defina explicitamente o nível de detalhamento como erros, avisos, progresso, progresso+, progresso++ ou progresso+++. Substitui `-v` e `-q`.
```

#### `--logdir=<dir>`

```
          \[Avançado] Escreva logs detalhados em um ou mais arquivos no diretório fornecido, com nomes gerados que incluem carimbos de data/hora e o nome do subcomando em execução.
```

(Para gravar um arquivo de log com um nome sobre o qual você tem controle completo, forneça `--log-to-stderr` e redirecione stderr conforme desejado.)

#### `--common-caches=<dir>`

```
          \[Avançado] Controle a localização dos dados armazenados em cache no disco que persistirão entre várias execuções da CLI, como pacotes QL baixados e planos de consulta compilada. Se não for definido explicitamente, o padrão corresponde a um diretório intitulado `.codeql` no diretório inicial do usuário; que será criado se ainda não existir.
```

Disponível desde `v2.15.2`.