/devenv=<устройство>[<разделитель> <устройство> …] <устройство>::=<переменная окружения>=<рабочий каталог>:<архивный каталог> <переменная окружения>::=имя переменной окружения, используемой для указания устройства с БД <рабочий каталог> и <архивный каталог> – спецификация пути к рабочему и архивному каталогу БД соответственно <разделитель> – для ОС типа Windows ";", для ОС типа UNIX ":"
По умолчанию система резервирования предполагает, что все файлы БД расположены на одном устройстве (в одном каталоге). Это устройство задается либо переменной окружения SY00, либо ключами командной строки pathtodb
, pathtoarc
.
Ключ /devenv
позволяет работать с базами данных, размещенными на нескольких устройствах. Значение этого ключа определяет, какие переменные окружения должны быть установлены при запуске ядра СУБД ЛИНТЕР и других утилит для данной БД.
Ключ имеет приоритет над переменными среды окружения и остальными опциями выбора каталогов.
Работа с базами данных на нескольких устройствах имеет следующие особенности:
при очистке БД удаляются все файлы, имеющие такой же вид, как файлы БД, независимо от того, принадлежат ли они БД или нет;
поскольку БД расположена в нескольких каталогах, невозможно создать список файлов БД, находящихся в одном каталоге. Это ограничивает применение шаблона %LIST% (список файлов БД без указания путей) при создании архивов. Вместо этого шаблона рекомендуется применять шаблон %FULLIST%;
при архивировании шаблон %FILE% определяет только имя файла без каталога. Соответственно, файлы в архиве оказываются нераспределенными по каталогам;
БД также не может быть восстановлена из архива автоматически (ключ /crash
), поскольку архив не может быть развернут в один каталог. Восстановление из архива должно производиться администратором системы резервирования в ручном режиме;
при использовании ключа /show
должен быть установлен и ключ /devenv
для отображения корректной информации. Для получения информации предпочтительно использовать утилиту hresctl (srvcmd);
при отображении информации утилитами srvcmd, hresctl или server ключом /show
выводится только каталог, соответствующий устройству SY00. Остальные устройства не отображаются;
для работы системы резервирования с базой, расположенной на нескольких устройствах, недопустимо указывать пути этих устройств явно, то есть запросом create or replace device, или установкой переменных окружения.
Вместо этого необходимо использовать опцию /devenv
для указания пар каталогов устройств рабочей и резервной базы данных. То есть система резервирования работает только с незарегистрированными устройствами;
если базы будут использоваться вне системы резервирования, то устанавливать пути к устройствам необходимо установкой переменных окружения, соответствующих устройствам;
для работы с незарегистрированными устройствами нужно назначить соответствующие привилегии пользователям. В простейшем случае запросом:
grant access on unlisted device to all;
См. документ «СУБД ЛИНТЕР. Администрирование комплекса средств защиты данных».
На ОС Windows работа с несколькими устройствами не реализована.
Задается установка 2-х переменных окружения SY00 и SY01. Устройство SY00 располагается в каталогах /path/to/work/db
или /path/to/arc/db
, а устройство SY01 в каталогах /path/to/work/db_dir
или /path/to/arc/db_dir
, соответственно:
SY00=/path/to/work/db:/path/to/arc/db:SY01=/path/to/work/db_dir:/path/to/arc/db_dir