ALTER SYSTEM

ALTER SYSTEM — modifica um parâmetro de configuração do servidor

Sinopse

ALTER SYSTEM SET parâmetro_de_configuração { TO | = }
    { valor [, ...]
    | DEFAULT
    }

ALTER SYSTEM RESET parâmetro_de_configuração
ALTER SYSTEM RESET ALL

Descrição

O comando ALTER SYSTEM é usado para alterar os parâmetros de configuração do servidor em todo o agrupamento de bancos de dados (instância). Pode ser mais conveniente do que o método tradicional de edição manual do arquivo postgresql.conf. O comando ALTER SYSTEM escreve a configuração do parâmetro fornecida no arquivo postgresql.auto.conf, lido em adição ao arquivo postgresql.conf. Definindo o parâmetro como DEFAULT, ou usando a variante RESET, será removida esta entrada de configuração do arquivo postgresql.auto.conf. Deve-se usar RESET ALL para remover todas estas entradas de configuração.

Os valores definidos pelo comando ALTER SYSTEM se tornarão efetivos após a próxima carga da configuração do servidor, ou após a próxima carga do servidor, no caso de parâmetros que só podem ser alterados na carga do servidor. A recarga da configuração do servidor pode ser comandada chamando a função SQL pg_reload_conf(), executando pg_ctl reload, ou enviando o sinal SIGHUP para o processo principal do servidor.

Somente os superusuários e os usuários com o privilégio ALTER SYSTEM concedido a um determinado parâmetro podem alterá-lo usando o comando ALTER SYSTEM. Além disso, como este comando atua diretamente no sistema de arquivos e não pode ser desfeito, ele não é permitido dentro de um bloco de transação ou de uma função.

Parâmetros

parâmetro_de_configuração

Nome do parâmetro de configuração que pode ser definido. Os parâmetros disponíveis estão documentados no Configuração do servidor.

valor

O novo valor do parâmetro. Os valores podem ser especificados como constantes cadeia de caracteres, identificadores, números ou listas separadas por vírgulas, conforme apropriado para o parâmetro específico. Os valores que não sejam números nem identificadores válidos devem ser colocados entre aspas. Pode ser escrito DEFAULT para especificar a remoção do parâmetro e de seu valor do arquivo postgresql.auto.conf.

Para alguns parâmetros que aceitam listas, os valores entre aspas produzirão uma saída entre aspas duplas para preservar espaços em branco e vírgulas; para outros, aspas duplas devem ser usadas dentro de cadeias de caracteres entre aspas simples (apóstrofos) para obter este efeito.

Notas

Este comando não pode ser usado para definir data_directory, allow_alter_system, nem parâmetros que não são permitidos no arquivo postgresql.conf (por exemplo, opções predefinidas).

Veja na Definição de parâmetros outras formas de definir parâmetros.

ALTER SYSTEM pode ser desativado definindo allow_alter_system como off, mas este não é um mecanismo de segurança (conforme explicado detalhadamente na documentação deste parâmetro).

Exemplos

Definir o wal_level:

ALTER SYSTEM SET wal_level = replica;

Desfazer o comando acima, recuperando a configuração que estava ativa no arquivo postgresql.conf:

ALTER SYSTEM RESET wal_level;

Conformidade

O comando ALTER SYSTEM é uma extensão do PostgreSQL.

Veja também

SET, SHOW