2015-07-26 3 views
6

У меня есть некоторая старая база данных, к которой мне нужно подключиться (postgres 9.1). У меня нет никаких проблем, чтобы начать сервер сподключиться к базе данных postgresql с разными языками

pg_ctl start -D D:\datadir\pgdata\data -w 

, но когда я пытаюсь подключиться, это дает:

psql -U postgres -p 15432 
psql: FATAL: database locale is incompatible with operating system 
DETAIL: The database was initialized with LC_COLLATE "Norwegian (Bokmål)_Norway.1252", which is not recognized by setlocale(). 
HINT: Recreate the database with another locale or install the missing locale. 

новая версия Postgres не запустить сервер (несовместимой версии данных). Я использую окна 10 с двоичными файлами postgres 9.1.

Как можно подключиться, перенести, обновить такую ​​базу данных, получить к ней данные?

+0

У меня такая же проблема! ЛЮБЫЕ ПРЕДЛОЖЕНИЯ? –

+1

Извините, я действительно не помню, как я это решил. Я предполагаю, что я либо подключился к нему с виртуальной машины с правильной локалью, либо каким-то образом сбрасывал/копировал и воссоздавал с другим. – Dainius

ответ

2

У меня была эта проблема сегодня. За исключением моя ошибка была в en_GB:

The database was initialized with LC_COLLATE "en_GB.UTF-8", which is not recognized by setlocale(). 

Я решил ее с

localedef -f UTF-8 -i en_GB en_GB.UTF-8 

Вам нужно будет изменить его в зависимости от языковых настроек.

Перезапустите службу postgresql после.

Смежные вопросы