

# Referência de parâmetros do gerenciamento de planos de consultas do Aurora PostgreSQL
<a name="AuroraPostgreSQL.Optimize.Parameters"></a>

Você pode definir suas preferências para a extensão `apg_plan_mgmt` usando os parâmetros listados nesta seção. Eles estão disponíveis no parâmetro de cluster de banco de dados personalizado e no grupo de parâmetros de banco de dados associado ao seu cluster de banco de dados do Aurora PostgreSQL. Esses parâmetros controlam o comportamento do recurso de gerenciamento de planos de consultas e como ele afeta o otimizador. Para obter informações sobre como configurar o gerenciamento de planos de consultas, consulte [Ativar o gerenciamento de planos de consulta do Aurora PostgreSQL](AuroraPostgreSQL.Optimize.overview.md#AuroraPostgreSQL.Optimize.Enable). A alteração dos parâmetros a seguir não terá efeito se a extensão `apg_plan_mgmt` não for configurada conforme detalhado nessa seção. Para obter informações sobre como modificar parâmetros, consulte [Modificar parâmetros em um grupo de parâmetros de cluster de banco de dadosno Amazon Aurora](USER_WorkingWithParamGroups.ModifyingCluster.md) e [Grupos de parâmetros de banco de dados para instâncias de banco de dados do Amazon Aurora](USER_WorkingWithDBInstanceParamGroups.md). 

**Topics**
+ [apg\$1plan\$1mgmt.capture\$1plan\$1baselines](#AuroraPostgreSQL.Optimize.Parameters.capture_plan_baselines)
+ [apg\$1plan\$1mgmt.plan\$1capture\$1threshold](#AuroraPostgreSQL.Optimize.Parameters.plan_capture_threshold)
+ [apg\$1plan\$1mgmt.explain\$1hashes](#AuroraPostgreSQL.Optimize.Parameters.explain_hashes)
+ [apg\$1plan\$1mgmt.log\$1plan\$1enforcement\$1result](#AuroraPostgreSQL.Optimize.Parameters.log_plan_enforcement_result)
+ [apg\$1plan\$1mgmt.max\$1databases](#AuroraPostgreSQL.Optimize.Parameters.max_databases)
+ [apg\$1plan\$1mgmt.max\$1plans](#AuroraPostgreSQL.Optimize.Parameters.max_plans)
+ [apg\$1plan\$1mgmt.plan\$1hash\$1version](#AuroraPostgreSQL.Optimize.Parameters.plan_hash_version)
+ [apg\$1plan\$1mgmt.plan\$1retention\$1period](#AuroraPostgreSQL.Optimize.Parameters.plan_retention_period)
+ [apg\$1plan\$1mgmt.unapproved\$1plan\$1execution\$1threshold](#AuroraPostgreSQL.Optimize.Parameters.unapproved_plan_execution_threshold)
+ [apg\$1plan\$1mgmt.use\$1plan\$1baselines](#AuroraPostgreSQL.Optimize.Parameters.use_plan_baselines)
+ [auto\$1explain.hashes](#AuroraPostgreSQL.Optimize.Parameters.auto_explain.hashes)

## apg\$1plan\$1mgmt.capture\$1plan\$1baselines
<a name="AuroraPostgreSQL.Optimize.Parameters.capture_plan_baselines"></a>

Captura os planos de execução de consultas gerados pelo otimizador para cada instrução SQL e os armazena na exibição `dba_plans`. Por padrão, o número máximo de planos que podem ser armazenados é 10.000, conforme especificado pelo parâmetro `apg_plan_mgmt.max_plans`. Para obter informações de referência, consulte [apg\$1plan\$1mgmt.max\$1plans](#AuroraPostgreSQL.Optimize.Parameters.max_plans).

É possível definir esse parâmetro no grupo de parâmetros do cluster de banco de dados personalizado ou no grupo de parâmetros do banco de dados personalizado. Alterar o valor desse parâmetro não requer uma reinicialização. 

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AmazonRDS/latest/AuroraUserGuide/AuroraPostgreSQL.Optimize.Parameters.html)

Para obter mais informações, consulte [Capturar planos de execução do Aurora PostgreSQL](AuroraPostgreSQL.Optimize.CapturePlans.md). 

## apg\$1plan\$1mgmt.plan\$1capture\$1threshold
<a name="AuroraPostgreSQL.Optimize.Parameters.plan_capture_threshold"></a>

Especifica um limite para que, se o custo total do plano de execução da consulta estiver abaixo do limite, o plano não seja capturado na exibição. `apg_plan_mgmt.dba_plans` 

Alterar o valor desse parâmetro não requer uma reinicialização.


| Padrão | Valores permitidos | Descrição | 
| --- | --- | --- | 
| 0 | 0 - 1.79769e\$1308 | Define o limite do custo total de execução do plano de consulta `apg_plan_mgmt` para captura de planos.   | 

Para obter mais informações, consulte [Examinar planos de consulta do Aurora PostgreSQL na exibição dba\$1plans](AuroraPostgreSQL.Optimize.ViewPlans.md).

## apg\$1plan\$1mgmt.explain\$1hashes
<a name="AuroraPostgreSQL.Optimize.Parameters.explain_hashes"></a>

Especifica se `EXPLAIN [ANALYZE]` mostra `sql_hash` e `plan_hash` no final de sua saída. Alterar o valor desse parâmetro não requer uma reinicialização. 

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AmazonRDS/latest/AuroraUserGuide/AuroraPostgreSQL.Optimize.Parameters.html)

## apg\$1plan\$1mgmt.log\$1plan\$1enforcement\$1result
<a name="AuroraPostgreSQL.Optimize.Parameters.log_plan_enforcement_result"></a>

Especifica se os resultados precisam ser registrados para verificar se os planos gerenciados pelo QPM são usados corretamente. Quando um plano genérico armazenado é usado, não haverá registros gravados nos arquivos de log. Alterar o valor desse parâmetro não requer uma reinicialização. 

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AmazonRDS/latest/AuroraUserGuide/AuroraPostgreSQL.Optimize.Parameters.html)

## apg\$1plan\$1mgmt.max\$1databases
<a name="AuroraPostgreSQL.Optimize.Parameters.max_databases"></a>

Especifica o número máximo de bancos de dados na instância Writer do seu cluster de banco de dados do Aurora PostgreSQL que podem usar o gerenciamento de planos de consultas. Por padrão, até 10 bancos de dados podem usar o gerenciamento de planos de consultas. Se você tiver mais de 10 bancos de dados na instância, poderá alterar o valor dessa configuração. Para descobrir quantos bancos de dados existem em determinada instância, conecte-se à instância usando `psql`. Depois, use o metacomando psql, `\l`, para listar os bancos de dados.

Alterar o valor desse parâmetro exige que você reinicialize a instância para que a configuração entre em vigor.


| Padrão | Valores permitidos | Descrição | 
| --- | --- | --- | 
| 10 | 10-2147483647 | Número máximo de bancos de dados que podem usar o gerenciamento de planos de consultas na instância. | 

É possível definir esse parâmetro no grupo de parâmetros do cluster de banco de dados personalizado ou no grupo de parâmetros do banco de dados personalizado. 

## apg\$1plan\$1mgmt.max\$1plans
<a name="AuroraPostgreSQL.Optimize.Parameters.max_plans"></a>

Defina o número máximo de instruções SQL que o gerenciador de planos de consulta pode manter na visualização `apg_plan_mgmt.dba_plans`. Recomendamos definir esse parâmetro como `10000` ou superior para todas as versões do Aurora PostgreSQL. 

É possível definir esse parâmetro no grupo de parâmetros do cluster de banco de dados personalizado ou no grupo de parâmetros do banco de dados personalizado. Alterar o valor desse parâmetro exige que você reinicialize a instância para que a configuração entre em vigor.


| Padrão | Valores permitidos | Descrição | 
| --- | --- | --- | 
| 10000 | 10-2147483647 | Número máximo de planos que podem ser armazenados na exibição `apg_plan_mgmt.dba_plans`.  O padrão para o Aurora PostgreSQL versão 10 e anteriores é 1000.  | 

Para obter mais informações, consulte [Examinar planos de consulta do Aurora PostgreSQL na exibição dba\$1plans](AuroraPostgreSQL.Optimize.ViewPlans.md).

## apg\$1plan\$1mgmt.plan\$1hash\$1version
<a name="AuroraPostgreSQL.Optimize.Parameters.plan_hash_version"></a>

Especifica os casos de uso que o cálculo de plan\$1hash foi desenvolvido para atender. Uma versão superior de `apg_plan_mgmt.plan_hash_version` contém todas as funcionalidades da versão inferior. Por exemplo, a versão 3 atende aos casos de uso compatíveis com a versão 2. 

 A alteração do valor desse parâmetro deve ser seguida de uma chamada para `apg_plan_mgmt.validate_plans('update_plan_hash')`. Ela atualiza os valores de plan\$1hash em cada banco de dados com apg\$1plan\$1mgmt instalado e entradas na tabela de planos. Para obter mais informações, consulte . [Validar planos](AuroraPostgreSQL.Optimize.Deleting.md#AuroraPostgreSQL.Optimize.Maintenance.ValidatingPlans) 

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AmazonRDS/latest/AuroraUserGuide/AuroraPostgreSQL.Optimize.Parameters.html)

## apg\$1plan\$1mgmt.plan\$1retention\$1period
<a name="AuroraPostgreSQL.Optimize.Parameters.plan_retention_period"></a>

Especifica o número de dias em que os planos serão mantidos na exibição `apg_plan_mgmt.dba_plans`; serão excluídos automaticamente depois disso. Por padrão, um plano é excluído quando tiverem decorrido 32 dias desde o último uso do plano (a coluna `last_used` na exibição `apg_plan_mgmt.dba_plans`). Você pode alterar essa configuração para qualquer número, 1 ou mais. 

Alterar o valor desse parâmetro exige que você reinicialize a instância para que a configuração entre em vigor.


| Padrão | Valores permitidos | Descrição | 
| --- | --- | --- | 
| 32 | 1-2147483647 | Número máximo de dias desde o último uso de um plano antes que seja excluído.  | 

Para obter mais informações, consulte [Examinar planos de consulta do Aurora PostgreSQL na exibição dba\$1plans](AuroraPostgreSQL.Optimize.ViewPlans.md).

## apg\$1plan\$1mgmt.unapproved\$1plan\$1execution\$1threshold
<a name="AuroraPostgreSQL.Optimize.Parameters.unapproved_plan_execution_threshold"></a>

Especifica um limite de custo abaixo do qual um plano Não aprovado pode ser usado pelo otimizador. Por padrão, o limite é 0, portanto o otimizador não executa planos com status Não aprovado. Definir esse parâmetro como um limite de custo trivialmente baixo, como 100, evita a sobrecarga de fiscalização do plano em planos triviais. Você também pode definir esse parâmetro como um valor extremamente grande, como 10000000, usando o estilo reativo do gerenciamento do plano. Isso permite que o otimizador use todos os planos escolhidos sem sobrecarga de fiscalização do plano. Mas, quando um plano ruim é encontrado, você pode marcá-lo manualmente como “rejeitado” para que não seja usado na próxima vez.

O valor desse parâmetro representa uma estimativa de custo para execução de determinado plano. Se um plano Não aprovado estiver abaixo desse custo estimado, o otimizador o usará para a instrução SQL. Você pode ver os planos capturados e seu status (Aprovado, Não aprovado) na exibição `dba_plans`. Para saber mais, consulte [Examinar planos de consulta do Aurora PostgreSQL na exibição dba\$1plans](AuroraPostgreSQL.Optimize.ViewPlans.md).

Alterar o valor desse parâmetro não requer uma reinicialização.


| Padrão | Valores permitidos | Descrição | 
| --- | --- | --- | 
| 0 | 0-2147483647 | Estimativa de custo do plano abaixo da qual um plano Não aprovado é usado. | 

Para obter mais informações, consulte [Usar planos gerenciados do Aurora PostgreSQL](AuroraPostgreSQL.Optimize.UsePlans.md). 

## apg\$1plan\$1mgmt.use\$1plan\$1baselines
<a name="AuroraPostgreSQL.Optimize.Parameters.use_plan_baselines"></a>

Especifica que o otimizador deve usar um dos planos capturados e armazenados com status Aprovado na exibição `apg_plan_mgmt.dba_plans`. Por padrão, esse parâmetro está desativado (false), fazendo com que o otimizador use o plano de custo mínimo que ele gera sem qualquer avaliação adicional. Ativar esse parâmetro (configurá-lo como true) força o otimizador a escolher um plano de execução de consulta para a instrução a partir da linha de base do plano. Para obter mais informações, consulte [Usar planos gerenciados do Aurora PostgreSQL](AuroraPostgreSQL.Optimize.UsePlans.md). Para encontrar uma imagem que detalha esse processo, consulte [Como o otimizador escolhe que plano executar.](AuroraPostgreSQL.Optimize.UsePlans.md#AuroraPostgreSQL.Optimize.UsePlans.ChoosePlans). 

É possível definir esse parâmetro no grupo de parâmetros do cluster de banco de dados personalizado ou no grupo de parâmetros do banco de dados personalizado. Alterar o valor desse parâmetro não requer uma reinicialização.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AmazonRDS/latest/AuroraUserGuide/AuroraPostgreSQL.Optimize.Parameters.html)

Você pode avaliar os tempos de resposta de diferentes planos capturados e alterar o status do plano, conforme necessário. Para obter mais informações, consulte [Melhorar os planos de consulta do Aurora PostgreSQL](AuroraPostgreSQL.Optimize.Maintenance.md). 

## auto\$1explain.hashes
<a name="AuroraPostgreSQL.Optimize.Parameters.auto_explain.hashes"></a>

Especifica se a saída de auto\$1explain mostra sql\$1hash e plan\$1hash. Alterar o valor desse parâmetro não requer uma reinicialização. 

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AmazonRDS/latest/AuroraUserGuide/AuroraPostgreSQL.Optimize.Parameters.html)