Как посмотреть список баз 1с в командной строке Linux

Пройдемся по пунктам выполняя наиболее востребованные команды. Заметьте, что я использовал 32 битную систему и 1С соответственно, поэтому если Вы используете 64  битную версию — путь к 1С будет скорее всего таким:/opt/1C/v8.3/x86_64/

Для начала запустим кластер серверов 1С следующей командой:

/opt/1C/v8.3/i386/ras --daemon cluster

Информация о кластерах

Для получения информации о кластере в терминале надо ввести команду:

/opt/1C/v8.3/i386/rac cluster list

Вывод этой команды будет примерно такой:

cluster                       : ef89b672-c6a6-11e4-ea91-0800274e0291
host                          : 1c
port                          : 1541
name                          : "Локальный кластер"
expiration-timeout            : 0
lifetime-limit                : 0
max-memory-size               : 0
max-memory-time-limit         : 0
security-level                : 0
session-fault-tolerance-level : 0
load-balancing-mode           : performance

В данном выводе нас особо интересует идентификатор кластера. В моем случае это ef89b672-c6a6-11e4-ea91-0800274e0291. Мы будем использовать его для дальнейших манипуляций.

Список баз

Эта операция нам нужна для того, чтобы получить идентификаторы баз и дальнейшей работы с ними.
Для получения списка баз вводим в терминале команду:

/opt/1C/v8.3/i386/rac infobase --cluster=ef89b672-c6a6-11e4-ea91-0800274e0291 summary list

Вывод:

infobase : d53e07e6-c6b5-11e4-6981-0800274e0291
name     : test1
descr    :
infobase : a71b8db2-c74a-11e4-1081-0800274e0291
name     : tkani
descr    :

Удаление базы

Вводим команду с использование идентификатора кластера и базы, которую хотим удалить:

/opt/1C/v8.3/i386/rac infobase --cluster=ef89b672-c6a6-11e4-ea91-0800274e0291 drop --infobase=a71b8db2-c74a-11e4-1081-0800274e0291

Вывода у этой команды нет, поэтому если не ругается — считаем, что база удалена успешно.
И не забываем удалить базу из postgresql, если наша цель — полное удаление базы.

pavel@1c:/opt/1C/v8.3/i386$ su postgres
postgres@1c:/opt/1C/v8.3/i386$ psql
postgres=# \l
postgres=# DROP DATABASE tkani;
postgres=# \q
postgres@1c:/opt/1C/v8.3/i386$ exit

Тут важный момент — после имени базы обязательно ставим точку с запятой.

Добавление базы

Тут довольно большая команда, которую я разъясню чуть ниже:

/opt/1C/v8.3/i386/rac infobase --cluster=ef89b672-c6a6-11e4-ea91-0800274e0291 create --create-database --name=tkani --dbms=PostgreSQL --db-server=1c --db-name=tkani --locale=ru --db-user=postgres --db-pwd=postgrespwd --license-distribution=allow

У этой команды будет вывод:

infobase : 09b3c6a0-c75b-11e4-1081-0800274e0291

Который соответственно показывает идентификатор только что созданной базы.

А теперь разъяснения:

—create-database
при создании информационной базы создать базу данных
—name=<name>  имя информационной базы
—dbms=MSSQLServer|PostgreSQL|IBMDB2|OracleDatabase  
 тип СУБД, в которой размещается информационная база

—db-server=<host> имя сервера баз данных
—db-name=<name>
—locale=<locale>  идентификатор национальных настроек информационной базы
—db-user=<name> имя администратора базы данных
—db-pwd=<pwd> пароль администратора базы данных
—descr=<descr> описание информационной базы
—date-offset=<offset> смещение дат в информационной базе
—security-level=<level> уровень безопасности установки соединений с информационной базой
—scheduled-jobs-deny=on|off  управление блокировкой выполнения регламентных заданий:
 on — выполнение регламентных заданий запрещено  
 off — выполнение регламентных заданий разрешено  
—license\-distribution=deny|allow
управление выдачей лицензий сервером 1С:Предприятия
 deny — выдача лицензий запрещена
 allow — выдача лицензий разрешена