Skip to topic | Skip to bottom
Home
Main
Main.PostgreSQLr1.2 - 04 Jul 2025 - 22:43 - GregorioIvanoff

Start of topic | Skip to actions

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


You are here: Main > MigracaoDeServidor > ConfiguracaoDoServidor > PostgreSQL

to top

Direitos de cópia © 1999-2025 pelos autores que contribuem. Todo material dessa plataforma de colaboração é propriedade dos autores que contribuem.
Ideias, solicitações, problemas relacionados a Ilanet? Dê sua opinião
Copyright © 1999-2025 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding Ilanet? Send feedback