Изменить язык системы и сообщения об ошибках в PostgreSQL

Можно ли сменить язык системных сообщений из PostgreSQL?

Например, в MSSQL это возможно с помощью оператора SQL SET LANGUAGE.

7 ответов

SET lc_messages TO 'en_US.UTF-8';

Больше информации о требованиях и ограничениях здесь.

Для меня ни ответ Милен А. Радева, ни ответ user1 не сработали - редактирование PostgreSQL\11\data\postgresql.confабсолютно никакого эффекта. Даже после установки lc_messages = 'random value' PostgreSQL все равно запустится.

Помогло удаление PostgreSQL\11\share\locale\*\LC_MESSAGES, после этого я наконец получил сообщения на английском языке.

Ответ Милена не сработал для меня.

Я получил это работает, изменив файл postgresql.conf, Если вы работаете в Linux, напишите:

sudo find / -iname postgresql.conf

У меня был мой в /var/lib/pgsql/data, Затем отредактируйте файл и найдите переменную lc_messages и измените его на предпочитаемый язык, например 'en_US.UTF-8',

Если PostgreSQL перестает работать, и вы проверяете в его журнале, что у вас есть ошибка, которая выглядит так:

invalid value for parameter "lc_messages": "en_US.UTF-8"

Вы должны редактировать /etc/locale.gen и раскомментируйте строку с кодировкой из сообщения об ошибке (например, en_US.UTF-8). Тогда ты должен бежать locale-gen (как root) для обновления локалей. Наконец, чтобы проверить, установлена ​​ли локаль, вы можете запустить locale -a,

Или, если вы хотите, чтобы язык был английский, вы можете просто установить lc_messages = 'C',

В моем случае (на Windows Server 2019) мне удалось изменить язык, создав переменную системной среды "LC_MESSAGES" со значением "English":

setx LC_MESSAGES English /m

(Решение взято отсюда)

Я просто удалил папку LC_MESSAGE из

      C:\Program Files\PostgreSQL\14\share\locale\<LANGUAGE YOU WANT TO GET RID OF>\LC_MESSAGE

и повторно войдите в psql

Я воспроизвел ту же проблему с именованием PostgreSQL сообщения об ошибках, которые были специально отображены в GUI из Intellij IDEA похожий на:

единственным решением для меня было переименование C:\Program Files\PostgreSQL\13\share\locale папку с другим именем по умолчанию.

затем результат изменился на:

Обратите внимание: это не было связано с Intellij Idea конфигураций вообще, потому что я тестировал разные ответы (и другие, не связанные с IDE ответы), например:

  1. Помощь | Изменить пользовательские параметры виртуальной машины
  2. Установка переменных окружения
  3. Использование определенных команд

только изменение postgresql.conf не работает в Windows10, следующий метод мне подходит, он очень прост, но работает:

  1. изменить lc_message = en_US.UTF-8, в postgresql.conf;
  2. удалите все файлы в папке: \share\locale, кроме папки es или языка, который вы хотите сохранить;
  3. перезапустите службу pg, и тогда вы обнаружите, что это то, что вам нужно!
Другие вопросы по тегам