Изменить язык системы и сообщения об ошибках в 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
ответы), например:
только изменение postgresql.conf не работает в Windows10, следующий метод мне подходит, он очень прост, но работает:
- изменить lc_message = en_US.UTF-8, в postgresql.conf;
- удалите все файлы в папке: \share\locale, кроме папки es или языка, который вы хотите сохранить;
- перезапустите службу pg, и тогда вы обнаружите, что это то, что вам нужно!