From: | mauricio pullabuestan <jmauriciopb(at)yahoo(dot)es> |
---|---|
To: | Postgres ayuda <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Cambiar el collate C.UTF-8 de base de datos postgres a en_US.utf8 |
Date: | 2021-04-22 17:03:42 |
Message-ID: | 1711763089.8283558.1619111022075@mail.yahoo.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Buen día.
Tengo un servidor de producción con Ubuntu 14.04.06 con postgresql 9.6, al hacer listar las bases de datos tengo:
nombre codificación Collate Ctype
midb UTF8 es_US.utf8 es_EC.utf8
postgres UTF8 es_US.utf8 es_EC.utf8
template0 UTF8 es_US.utf8 es_EC.utf8
template1 UTF8 es_US.utf8 es_EC.utf8
El servidor que hacia de replica tenía la misma configuración, pero se necesito formatear, e instalaron Ubuntu 20.04 debido a ciertas necesidades, al instalar postgresq 9.6 y listar las bases de datos tengo:
nombre codificación Collate Ctype
postgres UTF8 C_UTF-8 C_UTF-8
template0 UTF8 C_UTF-8 C_UTF-8
template1 UTF8 C_UTF-8 C_UTF-8
Al crear la base de datos:
CREATE DATABASE midb
WITH OWNER = postgres
ENCODING = 'UTF8'
TABLESPACE = pg_default
LC_COLLATE = 'en_US.utf8'
LC_CTYPE = 'es_EC.utf8'
CONNECTION LIMIT = -1;
Tengo un problema de incompatibilidad.
Instalo postgresql por comando y el collate y Ctype por defecto tienen C_UTF-8
apt-get install -y postgresql-9.6 postgresql-contrib-9.6
Como puedo hacer para que se instale al instalar postgres Collate = es_US.utf8 y Ctype = es_EC.utf8?
Al hacer pruebas de replicación cambie algunas configuraciones en postgresql.conf para que sean compatibles con el servidor de producción y al replicar la copia inicial de la base de datos no reporta problemas, pero al conectarse a la replica da problemas en collate incompatibles.
Googleando un poco encontré
update pg_database set datcollate='POSIX.UTF-8', datctype='POSIX.UTF-8' where datname='databasename';
La aplique a postgres, template0 y template1 y subi un respaldo y lo hace sin problemas.
No estoy seguro que sea la forma correcta de hacer este cambio de collate y Ctype a las bases postgres, template0 y template1, en la noche voy a probar replicar (Hot standby) y ver si da problemas, en su experiencia puede decirme si voy a tener problemas?
Cual sería la forma correcta de solucionar este problema de collate y Ctype?
Saludos
Mauricio.
From | Date | Subject | |
---|---|---|---|
Next Message | Jaime Casanova | 2021-04-23 04:11:32 | Re: Cambiar el collate C.UTF-8 de base de datos postgres a en_US.utf8 |
Previous Message | Micky Khan | 2021-04-22 16:07:06 | RE: ERROR: las tablas declaradas WITH OIDS no está soportado |