dump postgres cluster with different encodings

Started by bastiabout 11 years ago3 messagesgeneral
Jump to latest
#1basti
mailinglist@unix-solution.de

Hello I have a postgres cluster with following databases

davical | pgadmin | UTF8 | en_US.utf8 |
en_US.utf8 |
test | test | LATIN9 | en_US.iso885915 |
en_US.iso885915 |
foo | postgres | SQL_ASCII | en_US.iso885915 |
en_US.iso885915 |

when I try to dump this cluster with pg_dump or pg_dumpall I get errors
like:

pg_dump -E utf8 -i -p 5432 -F c -b -v -f "davical.backup" davical
pg_dump: [archiver (db)] connection to database "davical" failed:
FATAL: database locale is incompatible with operating system
DETAIL: The database was initialized with LC_COLLATE "en_US.utf8",
which is not recognized by setlocale().
HINT: Recreate the database with another locale or install the missing
locale.

I can't connect to this database via pgadmin, there is the same error.

locale -a
C
C.UTF-8
de_DE.utf8
en_US.iso885915
en_US.utf8
POSIX

how can I dump this cluster? and connect to database?

--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

#2Adrian Klaver
adrian.klaver@aklaver.com
In reply to: basti (#1)
Re: dump postgres cluster with different encodings

On 03/05/2015 02:48 AM, basti wrote:

Hello I have a postgres cluster with following databases

davical | pgadmin | UTF8 | en_US.utf8 |
en_US.utf8 |
test | test | LATIN9 | en_US.iso885915 |
en_US.iso885915 |
foo | postgres | SQL_ASCII | en_US.iso885915 |
en_US.iso885915 |

when I try to dump this cluster with pg_dump or pg_dumpall I get errors
like:

pg_dump -E utf8 -i -p 5432 -F c -b -v -f "davical.backup" davical
pg_dump: [archiver (db)] connection to database "davical" failed:
FATAL: database locale is incompatible with operating system
DETAIL: The database was initialized with LC_COLLATE "en_US.utf8",
which is not recognized by setlocale().
HINT: Recreate the database with another locale or install the missing
locale.

I can't connect to this database via pgadmin, there is the same error.

locale -a
C
C.UTF-8
de_DE.utf8
en_US.iso885915
en_US.utf8
POSIX

how can I dump this cluster? and connect to database?

Some more information is needed.

What is your OS and version?

What is version of Postgres?

How did the database get created?

What happens if you do not use -E?

--
Adrian Klaver
adrian.klaver@aklaver.com

--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

#3basti
mailinglist@unix-solution.de
In reply to: Adrian Klaver (#2)
Re: dump postgres cluster with different encodings

Whithout -E there was the same error.
The DB was create with:

create database "davical" WITH ENCODING = 'UTF8' LC_CTYPE='en_US.utf8' LC_COLLATE='en_US.utf8' TEMPLATE template0;

I have fix the error with

localedef -f UTF-8 -i en_US en_US.UTF-8

After a restart of postgres all is fine.

Thanks a lot.

p.s. os: debian 7 with postgres 9.1

On 05.03.2015 14:36, Adrian Klaver wrote:

On 03/05/2015 02:48 AM, basti wrote:

Hello I have a postgres cluster with following databases

davical | pgadmin | UTF8 | en_US.utf8 |
en_US.utf8 |
test | test | LATIN9 |
en_US.iso885915 |
en_US.iso885915 |
foo | postgres | SQL_ASCII | en_US.iso885915 |
en_US.iso885915 |

when I try to dump this cluster with pg_dump or pg_dumpall I get errors
like:

pg_dump -E utf8 -i -p 5432 -F c -b -v -f "davical.backup" davical
pg_dump: [archiver (db)] connection to database "davical" failed:
FATAL: database locale is incompatible with operating system
DETAIL: The database was initialized with LC_COLLATE "en_US.utf8",
which is not recognized by setlocale().
HINT: Recreate the database with another locale or install the missing
locale.

I can't connect to this database via pgadmin, there is the same error.

locale -a
C
C.UTF-8
de_DE.utf8
en_US.iso885915
en_US.utf8
POSIX

how can I dump this cluster? and connect to database?

Some more information is needed.

What is your OS and version?

What is version of Postgres?

How did the database get created?

What happens if you do not use -E?

--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general