База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как исправить ошибку PostgreSQL invalid value for parameter «lc_messages»?
- В этой теме 1 ответ, 2 участника, последнее обновление 2 часа, 16 минут назад сделано
Odin — Одинэсник.
-
АвторСообщения
-
-
25 апреля 2026 в 0:03 #36820
2026-04-24 20:49:37.399 GMT [1673232] usr1cv8@uat ERROR: invalid value for parameter «lc_messages»: «en_US.UTF-8»
2026-04-24 20:49:37.399 GMT [1673232] usr1cv8@uat STATEMENT: SET lc_messages to ‘en_US.UTF-8’;
2026-04-24 20:49:37.400 GMT [1673232] usr1cv8@uat WARNING: there is no transaction in progress
2026-04-24 20:49:37.428 GMT [1673233] usr1cv8@uat ERROR: invalid value for parameter «lc_messages»: «en_US.UTF-8»
2026-04-24 20:49:37.428 GMT [1673233] usr1cv8@uat STATEMENT: SET lc_messages to ‘en_US.UTF-8’;
2026-04-24 20:49:37.429 GMT [1673233] usr1cv8@uat WARNING: there is no transaction in progress
2026-04-24 20:49:37.469 GMT [1673234] usr1cv8@uat ERROR: invalid value for parameter «lc_messages»: «en_US.UTF-8»
2026-04-24 20:49:37.469 GMT [1673234] usr1cv8@uat STATEMENT: SET lc_messages to ‘en_US.UTF-8’;
2026-04-24 20:49:37.470 GMT [1673234] usr1cv8@uat WARNING: there is no transaction in progress -
25 апреля 2026 в 0:03 #36821
Ошибка PostgreSQL:
1С (Код)12ERROR: invalid value for parameter "lc_messages": "en_US.UTF-8"STATEMENT: SET lc_messages to 'en_US.UTF-8';означает, что в вашей системе отсутствует локаль
en_US.UTF-8, или она не поддерживается сервером PostgreSQL.Что делать:
1. Проверьте, какие локали установлены в ОС (Linux):
Shell1locale -aЕсли
en_US.UTF-8нет в списке, значит локаль не установлена.2. Установите локаль
en_US.UTF-8в системе.Для Debian/Ubuntu:
Shell12sudo locale-gen en_US.UTF-8sudo dpkg-reconfigure localesДля CentOS/RHEL:
Shell1localedef -i en_US -f UTF-8 en_US.UTF-83. Перезапустите PostgreSQL после установки локали:
Shell1sudo systemctl restart postgresql4. Проверьте, что локаль появилась:
Shell1locale -a | grep en_US.UTF-85. Если локаль не нужна, и 1С пытается её установить, то в настройках 1С или в параметрах подключения к базе нужно заменить
lc_messagesна существующую локаль, напримерru_RU.UTF-8.6. Если база создавалась с неправильной локалью, то лучше пересоздать базу с правильными параметрами локали (см. ниже).
—
Если проблема связана с созданием базы 1С в PostgreSQL, и локаль не совпадает с локалью кластера, то:
— Инициализируйте кластер PostgreSQL с нужной локалью:
Shell1initdb --locale=ru_RU.UTF-8 --encoding=UTF8 -D /путь/к/кластеру— Или замените шаблон базы
template1на базу с нужной локалью:MySQL1234UPDATE pg_database SET datistemplate = false WHERE datname = 'template1';DROP DATABASE template1;CREATE DATABASE template1 WITH TEMPLATE = template0 ENCODING = 'UTF8' LC_COLLATE = 'ru_RU.UTF-8' LC_CTYPE = 'ru_RU.UTF-8';UPDATE pg_database SET datistemplate = true WHERE datname = 'template1';— После этого создавайте базы 1С через панель администрирования, чтобы они наследовали правильные локали.
—
Рекомендую посмотреть здесь, там подробно про локали и ошибки PostgreSQL с 1С:
Ошибка type mvarchar does not exist при создании базы 1С в PostgreSQL
-
-
АвторСообщения
- Для ответа в этой теме необходимо авторизоваться.