Итоговый синтаксис команд rac для 1С 8.3.27.1786
Дата: 2026-01-16
Статус: ✅ Выяснено и протестировано
✅ Успешно выполненные команды
1. Создание кластера
Правильный синтаксис:
rac cluster insert --host=localhost --port=1541 --name=cluster1 localhost:1545
Важно:
- Порт должен быть 1541 (реестр кластера), а не 1540 (ragent)
- Результат: cluster : cf5054e4-27cc-456d-96e0-af779e0e4afb
Команда для проверки:
rac cluster list localhost:1545
2. Получение UUID кластера
rac cluster list localhost:1545
Вывод:
cluster : cf5054e4-27cc-456d-96e0-af779e0e4afb
host : localhost
port : 1541
name : "cluster1"
...
3. Регистрация рабочего сервера (автоматически)
Рабочий сервер регистрируется автоматически при создании кластера.
Проверка:
rac server list --cluster=cf5054e4-27cc-456d-96e0-af779e0e4afb localhost:1545
⚠️ Команда создания информационной базы (требует доработки)
Правильный синтаксис:
rac infobase create \
--create-database \
--name base1c \
--dbms PostgreSQL \
--db-server 10.218.14.79 \
--db-name base1c \
--db-user usr1cv8 \
--db-pwd 'пароль' \
--locale ru_RU \
--cluster=cf5054e4-27cc-456d-96e0-af779e0e4afb \
localhost:1545
Проблема: Ошибка "could not open extension control file "/usr/share/postgresql/14/extension/mchar.control""
Причина: В стандартном PostgreSQL отсутствуют расширения для 1С (mchar и другие)
Решение:
1. Использовать PostgreSQL, поставляемый 1С (включает необходимые расширения)
2. Или установить расширения вручную (требует пакетов от 1С)
3. Или создать базу данных через консоль администрирования 1С (GUI), которая может работать и без расширений
Статус: Синтаксис команды определен правильно, проблема в конфигурации PostgreSQL
Резюме по синтаксису
✅ Полностью выясненный синтаксис:
-
Создание кластера:
bash rac cluster insert --host=localhost --port=1541 --name=cluster1 localhost:1545 -
Получение UUID кластера:
bash rac cluster list localhost:1545 -
Создание информационной базы:
bash rac infobase create --create-database --name=<name> --dbms=PostgreSQL \ --db-server=<host> --db-name=<name> --db-user=<user> --db-pwd=<password> \ --locale=ru_RU --cluster=<UUID> localhost:1545
⚠️ Требования:
- UUID кластера обязателен (параметр
--cluster=<uuid>) - Адрес сервера администрирования всегда последний аргумент
- Для PostgreSQL требуется расширение mchar (обычно в PostgreSQL от 1С)
Рекомендации
- Для создания кластера: ✅ Используйте
rac cluster insertс портом 1541 - работает отлично - Для создания базы данных:
- ✅ Синтаксис команды определен правильно
- ⚠️ Требуется PostgreSQL с расширениями 1С или использование GUI консоли администрирования
Готовые команды для копирования
Получить UUID кластера:
lxc exec 1c-server -- bash -c "/opt/1cv8/x86_64/8.3.27.1786/rac cluster list localhost:1545 | grep '^cluster' | awk '{print \$3}'"
Создать информационную базу (после устранения проблемы):
PGPASS=$(./scripts/get-secret.sh POSTGRES_1C_PASSWORD)
CLUSTER_UUID="cf5054e4-27cc-456d-96e0-af779e0e4afb"
lxc exec 1c-server -- bash -c "/opt/1cv8/x86_64/8.3.27.1786/rac infobase create \
--create-database \
--name base1c \
--dbms PostgreSQL \
--db-server 10.218.14.79 \
--db-name base1c \
--db-user usr1cv8 \
--db-pwd '$PGPASS' \
--locale ru_RU \
--cluster=$CLUSTER_UUID \
localhost:1545"
ClusterConfigService и регистрация рабочего сервера
При ошибке «Не найдено ни одного сервера с размещенным сервисом ClusterConfigService» см. Проблема ClusterConfigService. Кратко: первый рабочий сервер создаётся только вместе с кластером (rac cluster insert). Команда rac server insert для первого worker не сработает — она требует уже существующего worker с ClusterConfigService.
Связанные документы
- Проблема ClusterConfigService — ошибка при регистрации рабочего сервера
- Полная документация:
docs/setup/1c-rac-commands-syntax.md - Статус настройки:
docs/setup/1c-server-setup-status.md