ALTER SYSTEM — modifica um parâmetro de configuração do servidor
ALTER SYSTEM SETparâmetro_de_configuração{ TO | = } {valor[, ...] | DEFAULT } ALTER SYSTEM RESETparâmetro_de_configuraçãoALTER SYSTEM RESET ALL
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âmetro_de_configuraçãoNome 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.
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).
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;
O comando ALTER SYSTEM é uma extensão do
PostgreSQL.