Re: [pgsql-es-ayuda] duda con client encoding (opps, me había equivocado en los destinatarios)

From: uno dos <refreegrata(at)yahoo(dot)com>
To: Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
Cc: "pgsql-es-ayuda(at)postgresql(dot)org" <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: [pgsql-es-ayuda] duda con client encoding (opps, me había equivocado en los destinatarios)
Date: 2011-09-15 16:56:01
Message-ID: 1316105761.42617.YahooMailNeo@web38405.mail.mud.yahoo.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

pgsql-es-ayuda(at)postgresql(dot)org

________________________________
From: Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
To: uno dos <refreegrata(at)yahoo(dot)com>
Cc: Ayuda <pgsql-es-ayuda(at)postgresql(dot)org>
Sent: Thursday, September 15, 2011 12:37 PM
Subject: Re: [pgsql-es-ayuda] duda con client encoding

Muchas gracias, ahora me queda más claro el tema y por que
sería mejor realizar la copia entre A y B antes y después modificar el
client_encoding de B para la conexión entre la aplicación y la base de
datos. Modificar el client_encoding antes sólo sería útil si estoy
copiando entre 2 base de datos de distintos servidores con encoding base distinto o algo así.
Saludos.

Excerpts from uno dos's message of jue sep 15 13:30:44 -0300 2011:
>
>
>
>
> ________________________________
> From: Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
> To: uno dos <refreegrata(at)yahoo(dot)com>
> Cc: Ayuda <pgsql-es-ayuda(at)postgresql(dot)org>
> Sent: Thursday, September 15, 2011 12:20 PM
> Subject: Re: [pgsql-es-ayuda] duda con client encoding
>
> Muchas gracias por responder. Esto quiere decir, que para todos los efectos las bases de datos con client_encoding 'UTF8' se comportarán como una  verdaderamente 'UTF8', independientemente de su real encoding.
>
> Entonces creo que podría funcionar esto.
>
> 1) Clono la base de datos de A(la antigua). La clonada (exactamente igual a A) la denominaré 'Clon_A';
> 2) cambio el client_encoding de 'Clon_A' a 'UTF8';
> 3) copio los datos deseados desde 'Clon_A' a B(la nueva);
>
> Según entiendo debiera funcionar ya que la copia la estaría realizando entre 2 bases de datos con encoding 'LATIN1' y client_encoding 'UTF8';
>
> ¿Estoy en lo correcto?

Sí, eso debería funcionar. Pero no mezcles conceptos.  La base de datos
no "tiene" un client_encoding. El client_encoding es una propiedad de
cada conexión.  Si tú cambias client_encoding, lo que estás diciendo es
que el cliente usará tal encoding, y el servidor se hará cargo de
convertir "en el cable" todo lo que venga desde el cliente de
client_encoding a server_encoding; y todo lo que vaya hacia el cliente,
lo convertirá de server_encoding a client_encoding.

No veo el propósito de tener Clon_A.

Si las dos BDs tienen server_encoding=latin1, ¿cuál es el propósito de
convertir a UTF8 durante la transmisión?  Es derechamente más eficiente
(y más simple) dejar que toda la transmisión ocurra en Latin1.

--
Álvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Alvaro Herrera 2011-09-16 00:21:26 Re: Creacion de BD
Previous Message Alvaro Herrera 2011-09-15 16:37:24 Re: duda con client encoding