Skip site navigation (1) Skip section navigation (2)

Re: 8.4, Encoding, LC_ ...

From: Andrés P(dot)P(dot) <solopostgres(at)gmail(dot)com>
To: Guillermo Villanueva <guillermovil(at)gmail(dot)com>
Cc: pgsql-es-ayuda <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: 8.4, Encoding, LC_ ...
Date: 2010-09-23 16:04:02
Message-ID: AANLkTimo0nJtzL_qpDpGJPR5pWmtXQaOw2HAts9_hTL1@mail.gmail.com (view raw or flat)
Thread:
Lists: pgsql-es-ayuda
Ok.

Hice dos intentos:

El primero conectándome a template0, pero me reclama que esa bd no acepta
conecciones. Ahí se terminó el primer intento.

El segundo intento me conecté al template1 y agregué los parámetros
LC_COLLATE y LC_CTYPE pero me arrojó otro tipo de error.. aunque relacionado
a lo mismo:

------------------------------------------------------------------------------------------------------------------------
*template1=#
template1=# create database comdb with encoding 'LATIN1' LC_COLLATE = 'C'
LC_CTYPE = 'C';
ERROR:  la nueva codificacion (LATIN1) es incompatible con la codificacio de
la base de datos patron (UTF8)
HINT:  Use la misma codificacion que en la base de datos patron, o bien use
template0 como patron.
*
------------------------------------------------------------------------------------------------------------------------

...ahí aparece tu solución de usar template0... yo nunca he usado ese
template..... además recuerda que los otros servidores que ya están
operativos tienen la siguiente configuración de sus bds:

------------------------------------------------------------------------------------------------------------------------
*[postgres_S1~]$ psql -l
                              List of databases
   Name    |  Owner   | Encoding | Collation | Ctype |   Access privileges
-----------+----------+----------+-----------+-------+-----------------------
 comdb     | postgres | LATIN1   | es_ES     | es_ES | =Tc/postgres
                                                     : postgres=CTc/postgres
 postgres  | postgres | LATIN1   | es_ES     | es_ES |
 template0 | postgres | LATIN1   | es_ES     | es_ES | =c/postgres
                                                     : postgres=CTc/postgres
 template1 | postgres | LATIN1   | es_ES     | es_ES | =c/postgres
                                                     : postgres=CTc/postgres
(4 rows)

[postgres_S1~]$*
------------------------------------------------------------------------------------------------------------------------
Gracias por la sugerencia.  Sigo investigando..

Saludos
Andrés


El 23 de septiembre de 2010 11:41, Guillermo Villanueva <
guillermovil(at)gmail(dot)com> escribió:

> Me salió el mismo error cuando intenté crearla basado en la template1,
> cuando lo hice basado en la template0 funcionó!
> CREATE DATABASE pp
>   WITH OWNER = postgres
>        ENCODING = 'LATIN1'
>        TABLESPACE = pg_default
>        LC_COLLATE = 'C'
>        LC_CTYPE = 'C'
>        CONNECTION LIMIT = -1;
> Saludos
>
> ~~~~~~~~~~~~~~~~
> Guillermo Villanueva
>
>
> El 23 de septiembre de 2010 11:23, Andrés P.P. <solopostgres(at)gmail(dot)com>escribió:
>
>
>> Gracias Guillermo
>>
>> Yo trabajo con terminal e hice lo que me sugeriste... pero tampoco me
>> resultó:
>>
>>
>> -------------------------------------------------------------------------------------------------------------------------------
>> *[root(at)S3]# service postgresql initdb -E LATIN1 --locale=C
>> Initializing database:                                     [  OK  ]
>> [root(at)S3]#
>> [root(at)S3]# service postgresql start
>> Starting postgresql service:                               [  OK  ]
>> [root(at)S3]#
>> [root(at)S3]# su - postgres
>> [postgres(at)S3]$ cd BD/
>>
>> [postgres(at)S3]$ psql
>> psql (8.4.1)
>> Type "help" for help.
>> *
>> *
>> postgres=# \c template1 postgres
>> psql (8.4.1)
>> You are now connected to database "template1".
>> template1=# create database comdb with encoding 'LATIN1';
>> ERROR:  la codificacion LATIN1 no coincide con la configuracion regional
>> en_US.UTF-8
>> DETAIL:  La configuracion regional LC_CTYPE requiere la codificacion UTF8.
>> template1=#
>> template1=# \q
>>
>> [postgres(at)S3]$ psql -l
>>                                   List of databases
>>    Name    |  Owner   | Encoding |  Collation  |    Ctype    |   Access
>> privileges
>>
>> -----------+----------+----------+-------------+-------------+-----------------------
>>  postgres  | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 |
>>  template0 | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =c/postgres
>>                                                              :
>> postgres=CTc/postgres
>>  template1 | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =c/postgres
>>                                                              :
>> postgres=CTc/postgres
>> (3 rows)
>> *
>> *[postgres(at)S3]$
>> *
>> -------------------------------------------------------------------------------------------------------------------------------
>> Gracias nuevamente... talvez estoy olvidando algo previo ..alguna variable
>> ambiental, no sé...  pero lo que tengo claro es que la configuración
>> regional no la cambié en los otros servidores en donde sí pude crear BD con
>> codificación LATIN1...
>>
>> Cualquier sugerencia, consulta o prueba no duden en indicármela...
>>
>> Saludos
>> Andrés
>>
>>
>>
>> El 23 de septiembre de 2010 06:10, Guillermo Villanueva <
>> guillermovil(at)gmail(dot)com> escribió:
>>
>> Hola Andrés, justamente ayer pude hacer lo que dices utilizando initdb de
>>> la siguiente manera:
>>> En el terminal de linux: initdb -E LATIN1 --locale=C -D datos
>>> Desde pg admin creo base de datos nueva, seleccionando:
>>> Encoding: LATIN1
>>> Termplate: Template1
>>> Collation: C
>>> Char Type: C
>>>
>>>
>>> Saludos
>>>
>>> ~~~~~~~~~~~~~~~~
>>> Guillermo Villanueva
>>>
>>>
>>> El 22 de septiembre de 2010 23:30, Andrés P.P. <solopostgres(at)gmail(dot)com>escribió:
>>>
>>>  yo he podido crear BD LATIN1 en 8.4 cambiando la configuración local y
>>>> reiniciando...  pero conociendo al cliente estoy seguro que no van a querer
>>>> modificar la configuración local sin que le expliquemos el porqué hay que
>>>> hacer dicho cambio si los otros dos servidores no fue necesario hacerlo
>>>> aparentemente.
>>>>
>>>>
>>>
>>>
>>
>

In response to

Responses

pgsql-es-ayuda by date

Next:From: Guillermo VillanuevaDate: 2010-09-23 16:07:48
Subject: Re: 8.4, Encoding, LC_ ...
Previous:From: Alvaro HerreraDate: 2010-09-23 16:02:22
Subject: Re: error en vacuum analyze

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group