Определение оператора репликации данных.
::=
<Имя правила>
задается идентификатором длиной не более 66 символов.
Опция OR REPLACE
заставляет удалять существующее в БД правило репликации и создавать его под тем же именем, но с другими параметрами.
Опция IF NOT EXISTS
отменяет выполнение оператора, если указанное правило репликации уже существует в БД.
Одновременное использование опций IF NOT EXISTS
и OR REPLACE
запрещено.
<Пароль>
– пароль пользователя БД-приемника.
В качестве <имени таблицы-источника>
и <имени таблицы-приемника>
должны указываться имена базовых таблиц. Использовать имена представлений и системных таблиц не допускается.
Правило репликации создается от имени пользователя, выполняющего создание правила.
<Имя пользователя>
задает имя пользователя на удаленном узле. Этот пользователь обязательно должен быть пользователем удаленной БД в момент создания правила.
ENABLE
– правило доступно, DISABLE
– правило недоступно для использования.
SYNC
– режим синхронной, ASYNC
– асинхронной репликации. При асинхронном режиме тиражирование данных выполняется по мере возможности.
По умолчанию используются значения ENABLE
, ASYNC
.
Конструкции PRIORITY
и CALCULATE
задают правила разрешения конфликтов при тиражировании данных. Правила задаются для всей таблицы в целом.
Если используется конструкция COLUMN (<имя столбца>[, …])
, то для указанных столбцов могут быть установлены индивидуальные правила разрешения конфликтов (см. документ «СУБД ЛИНТЕР. Репликация данных»).
Структуры локальной и удаленной таблиц должны быть идентичны.
В БД-источнике репликации должны находиться системные таблицы SERVERS
, $$$REPL
и $$$EXTREEPL
.
Репликация таблиц, содержащих данные типа EXTFILE
, не допускается.
Локальная таблица (и, соответственно, удаленная) должна обязательно иметь одно или многостолбцовый индекс с атрибутом PRIMARY KEY
.
Создавать правило репликации имеет право владелец тиражируемой таблицы или пользователь с привилегиями SELECT
, DELETE
, INSERT
, UPDATE
на эту таблицу.