Resolvendo Problema Log Postgres (Collation Version) - Bruno Devx - BR Criativus

post #6423

Resolvendo Problema Log Postgres (Collation Version)

Publicado em: 17/09/2025 / Atualizado em: 17/09/2025

Categorias: BlogBanco de dadosPortainerPostgresShell Script

No console do seu Portainer esta mostrando esses logs no container do Postgres:

2025-09-17 10:15:06.661 UTC [139011] WARNING:  database "postgres" has a collation version mismatch

2025-09-17 10:15:06.661 UTC [139011] DETAIL:  The database was created using collation version X.XX, but the operating system provides version Y.YY.

2025-09-17 10:15:06.661 UTC [139011] HINT:  Rebuild all objects in this database that use the default collation and run ALTER DATABASE postgres REFRESH COLLATION VERSION, or build PostgreSQL with the right library version.

Esses alertas que você está vendo no log do PostgreSQL no Portainer não são exatamente erros fatais, mas avisos importantes sobre incompatibilidade de collation (ordenação de strings/texto).

O isso significa:

  • Collation define como o banco ordena e compara strings (respeitando acentos, maiúsculas/minúsculas, regras de idioma etc.).
  • Seu banco foi criado quando a libc/glibc (biblioteca do sistema responsável pelas regras de locale) estava em uma versão X.XX.
  • Agora, o container ou o sistema onde roda o PostgreSQL está fornecendo a versão Y.YY.
  • O PostgreSQL detecta essa diferença e avisa: se a collation mudou, a forma como strings são comparadas e ordenadas pode não ser mais a mesma.

Como resolver isso:

Conecte no console do seu container via Portainer, e se conecte ao Postgres usando o comando psql

Depois rode esse comando para cada banco que você tem:

ALTER DATABASE meu_banco REFRESH COLLATION VERSION;
REINDEX DATABASE meu_banco;

Troque onde esta meu_banco para o nome do seu banco de dados criado no Postgres.

Publicações recomendadas:



Sugira uma publicação

Envie uma mensagem e sugira um publicação sobre um assunto que tenha dificuldades de resolver.

Clique aqui e entre em contato