Вопросы управления издателями Oracle
После завершения настройки издателя Oracle и установки механизмов отслеживания изменения репликаций администраторы систем баз данных Oracle могут использовать стандартные служебные программы Oracle и выполнять типичные задачи системного администратора. Однако необходимо знать о влиянии некоторых административных задач на публикуемые данные.
За исключением удаления или изменения столбца, публикуемого для репликации, либо удаления или изменения любого объекта репликации, эти вопросы не относятся к публикациям моментальных снимков.
Импорт и загрузка данных
Триггеры используются для отслеживания изменений публикаций транзакций в Oracle. Изменения опубликованных таблиц можно реплицировать на подписчики, только если триггеры репликации запускаются, когда происходит обновление, вставка или удаление. В служебных программах Oracle Import и SQL*Loader имеются параметры, которые влияют на запуск триггеров при вставке строк в реплицированные таблицы с помощью этих программ.
Служебная программа Oracle Import
С помощью программы Oracle Import можно присвоить параметру ignore значение 'y' или 'n' (по умолчанию 'n'). Если параметр ignore имеет значение 'n', таблица во время импорта удаляется и создается заново. Таким образом удаляются триггеры репликации и отключается репликация. Если параметр ignore имеет значение 'y', операция импорта попытается загрузить строки в существующую таблицу, что запускает триггеры репликации. Поэтому при импорте реплицированной таблицы с помощью инструмента Import убедитесь, что параметру ignore присвоено значение 'y'.
Служебная программа SQL*Loader
С помощью программы SQL*Loader можно присвоить параметру direct значение 'true' или 'false' (по умолчанию 'false'). Если параметр direct имеет значение 'false', строки вставляются с использованием обычных инструкций INSERT, что запускает триггеры репликации. Если параметр direct имеет значение 'true', загрузка оптимизируется, а триггеры не запускаются. Поэтому при загрузке реплицированной таблицы с помощью инструмента SQL*Loader убедитесь, что параметру direct присвоено значение 'false'.
Внесение изменений в опубликованные объекты
Для следующих действий не требуются особые соображения:
Перестроение индексов в опубликованных таблицах.
Добавление пользовательских триггеров у опубликованную таблицу.
Следующее действие требует остановки всех операций в опубликованных таблицах:
- Перемещение опубликованной таблицы.
Для следующих действий требуется удалить публикацию, выполнить нужное действие, а затем заново создать эту публикацию:
Усечение опубликованной таблицы.
Переименование опубликованной таблицы.
Добавление столбца в опубликованную таблицу.
Удаление или изменение столбца, опубликованного для репликации.
Выполнение операций, не регистрируемых в журналах.
Удаление или изменение объектов репликации
Необходимо удалить и заново сконфигурировать издателя, если удаляются или изменяются любые таблицы отслеживания, триггеры, последовательности или хранимые процедуры. Частичный список таких объектов см. в разделе Объекты, создаваемые на издателе Oracle.
Сведения об удалении и повторной настройке издателя см. в подразделе «Изменения, требующие повторной настройки издателя» раздела Диагностика издателей Oracle.