Atualização do servidor PostgreSQL que atende aos Banco de Dados do Ambiente Compartilhado
Durante o processo, a base de dados fica inacessível e a versão do PostgreSQL é atualizada para versão 15.6 que é mais estável, atualizada, com melhor processamento do Planejador de Consultas, com novos recursos de segurança e funções para gerenciamento do Modelo de Dados do Banco.
Número desta manutenção: [CHG0202956]; Número desta manutenção: (CHG0192478)
Ponto de Atenção!
Na migração mantemos a configuração atual do Encondig e Collate do(s) Banco de Dados. Porém, é recomendado fazer a atualização desta configuração de linguagem para esta versão do PostgreSQL.
Outro ponto. Caso utilize o oid como chave PK em sua(s) tabela(s) é altamente recomendado que faça a atualização para removê-lo. Desde a versão 12 do PostgreSQL este objeto não está mais acessível e as novas versões não o aceitam como constrain de chave primária.
Segue abaixo um pequeno resumo sobre o assunto:
Removendo colunas com OIDS no PostgreSQL
A partir da versão 12, o PostgreSQL deixa de suportar o uso da coluna oculta "OID" ou "Object Identifier", que até então era opcional em tabelas normais, e torna-se uma coluna explícita nas tabelas do catálogo do sistema.
Se você nem sabe que a coluna está, ou não o utiliza e já tem sua própria chave primária (PK), então você só precisa remover a coluna OID com um simples comando como:
ALTER TABLE minha_tabela SET WITHOUT OIDS;
Agora, se utiliza esta coluna em sua(s) tabela(s) como uma chave artificial, é recomendado criar uma nova coluna com nome de sua preferência.
Neste caso é necessário seguir o passo-a-passo abaixo. Você pode utilizar estes comandos, ou buscar outra maneira para esta atualização:
>
> Criar a coluna ID;
>
> Ajustar a coluna para que novas linhas recebam um novo número automaticamente a partir do último número da coluna OID;
>
> Popular a coluna ID com os valores da coluna OID;
SELECT coalesce(max(oid)::integer,0) + 1 FROM minha_tabela;
ALTER TABLE minha_tabela ADD COLUMN id integer GENERATED BY DEFAULT AS IDENTITY (START WITH 12345);
>
> Alterar a tabela para que a coluna ID se torne uma chave primária (PK);
UPDATE minha_tabela SET id = OID;
ALTER TABLE minha_tabela ADD PRIMARY KEY (id);
>
> Por fim remover a coluna OID.
ALTER TABLE minha_tabela SET WITHOUT OIDS;
Biblioteca de caracteres o Banco de Dados
Dica importante!
O SQL_ASCII não exige que os dados armazenados no banco de dados tenham qualquer codificação específica e, portanto, essa escolha apresenta riscos de mau comportamento dependente da localidade. O uso desta combinação de configurações está obsoleto e pode algum dia ser totalmente proibido.
Fonte:
https://www.postgresql.org/docs/15/multibyte.html
Também disponibilizamos este link do ajuda Locaweb, para auxiliá-lo caso haja dúvidas sobre esta nova versão do Banco de dados.
https://www.locaweb.com.br/ajuda/wiki/atualizacao-do-banco-de-dados-postgresql/
Atenciosamente,
Equipe Locaweb.
--
GregorioIvanoff - 21 Jun 2025; 16 Jun 2025
to top