Gerenciar as extensões do PostgreSQL
APLICA-SE A: Banco de dados do Azure para PostgreSQL – Servidor Flexível
O servidor flexível do Banco de Dados do Azure para PostgreSQL permite que você estenda a funcionalidade do seu banco de dados usando extensões. As extensões agrupam vários objetos SQL relacionados em um único pacote que pode ser carregado ou removido do seu banco de dados com um comando. Depois de serem carregadas no banco de dados, as extensões funcionam como recursos internos.
Permitir extensões
Antes de instalar extensões no servidor flexível do Banco de Dados do Azure para PostgreSQL, você deve permitir que essas extensões sejam listadas para uso.
Usando o portal do Azure:
Carregar bibliotecas
shared_preload_libraries
é um parâmetro de configuração do servidor que determina quais bibliotecas devem ser carregadas quando o servidor flexível do Banco de Dados do Azure para PostgreSQL é iniciado. Todas as bibliotecas que usam memória compartilhada devem ser carregadas por meio desse parâmetro. Se sua extensão precisar ser adicionada às bibliotecas de pré-carregamento compartilhadas, siga essas etapas:
Usando o portal do Azure:
Selecione sua instância do servidor flexível do Banco de Dados do Azure para PostgreSQL.
No menu de recursos, na seção Configurações, selecione Parâmetros do servidor.
Inclua as bibliotecas que deseja adicionar no valor de
shared_preload_libraries
e selecione Salvar.Como
shared_preload_libraries
é um parâmetro estático do servidor, é necessário reiniciar o servidor para que as alterações entrem em vigor.
Criar extensões
Depois que uma extensão é incluída na lista de permissões e, se a extensão exigir, também é adicionada a shared_load_libraries
, ela pode ser criada ou instalada em cada banco de dados no qual será usada.
Para criar uma extensão, um usuário deve ser membro da função
azure_pg_admin
.Execute o comando CREATE EXTENSION para criar ou instalar uma extensão específica. Esse comando carrega os objetos empacotados em seu banco de dados.
Observação
As extensões de terceiros oferecidas no servidor flexível do Banco de Dados do Azure para PostgreSQL são códigos licenciados de código aberto. Não oferecemos extensões de terceiros ou versões de extensão com modelos de licenciamento premium ou proprietários.
A instância de servidor flexível do Banco de Dados do Azure para PostgreSQL oferece suporte a um subconjunto de extensões principais do PostgreSQL, conforme listado em extensões com suporte por nome ou em extensões com suporte por versão do PostgreSQL. Essas informações também estão disponíveis por meio da execução de SHOW azure.extensions;
. Extensões não incluídas nessas listas não são suportadas no servidor flexível do Banco de Dados do Azure para PostgreSQL. Você não pode criar ou carregar suas próprias extensões no servidor flexível do Banco de Dados do Azure para PostgreSQL.
Extensões de queda
Para remover uma extensão, primeiro certifique-se de colocá-la na lista de permissões.
Para cancelar uma extensão, um usuário deve ser membro da função
azure_pg_admin
.Execute o comando DROP EXTENSION para remover ou desinstalar uma extensão específica. Esse comando remove os objetos empacotados na extensão do seu banco de dados.
Atualizar extensões
Para atualizar uma extensão instalada para a versão mais recente disponível com suporte pelo Azure, use o seguinte comando SQL:
ALTER EXTENSION <extension_name> UPDATE;
Esse comando simplifica o gerenciamento de extensões de banco de dados, permitindo que os usuários atualizem manualmente para a versão mais recente aprovada pelo Azure, melhorando a compatibilidade e a segurança.
Limitações
Embora a atualização de extensões seja simples, há certas limitações:
Seleção de uma versão específica: O comando não suporta atualização para versões intermediárias de uma extensão.
- Ele atualiza constantemente a ultima versão disponível.
Downgrade: Não oferece suporte ao downgrade de uma extensão para uma versão anterior. Se for necessário fazer um downgrade, poderá ser necessário suporte e dependerá da disponibilidade da versão anterior.
Ver extensões instaladas
Para listar as extensões instaladas no momento no banco de dados, use o seguinte comando SQL:
SELECT * FROM pg_extension;
Possíveis erros
A extensão "%s" não está na lista de permissões para usuários "azure_pg_admin" no Banco de Dados do Azure para PostgreSQL
Esse erro ocorre quando você executa um comando CREATE EXTENSION
ou DROP EXTENSION
referindo-se a uma extensão que não está na lista de permissões ou a uma extensão que ainda não é suportada na instância do Banco de Dados do Azure para servidor flexível na qual você está executando o comando.
Somente membros de "azure_pg_admin" têm permissão para usar CREATE EXTENSION
Esse erro ocorre quando o usuário que executa um CREATE EXTENSION
comando não é membro da azure_pg_admin
função.
Somente membros do "azure_pg_admin" têm permissão para usar DROP EXTENSION
Esse erro ocorre quando o usuário que executa um DROP EXTENSION
comando não é membro da azure_pg_admin
função.