Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Линтер методичка

.pdf
Скачиваний:
78
Добавлен:
21.05.2015
Размер:
1.38 Mб
Скачать

Практическое занятие 14 Настройка сервера репликации в среде UNIX

Практика 2 часа (Лекция 12)

Целью занятия является освоение настройки сервера репликации, создание правил репликации. Используются два компьютера, на каждом из которых будет установлена база данных (на одном – источник, на другом - приемник) и запущен сервер репликации.

14.1. Создание основной базы данных

Структура базы должна быть идентична для источника и приемника. На этой базе должен быть выполнен набор запросов из файла dict/distr.sql . После этого ядро для этой базы данных должно быть остановлено и запущено заново.

14.2. Создание вспомогательной базы данных

Необходимо создать вспомогательную базу хранения репликационных данных. Для этого необходимо выполнить скрипт db/make_storage. Этот скрипт создает базу данных в текущем каталоге, поэтому перед запуском необходимо сменить текущий каталог на каталог вспомогательной базы данных. Можно также создать базу и вручную. Для этого

1.Создать базу утилитой gendb.

2.Задать идентификатор механизма обмена, отличный от значения по умолчанию. Идентификатор механизма обмена задается путем установки переменной окружения LINTER_MBX в какое либо натуральное (в математ. смысле) значение.

Значение по-умолчанию равно 20561. Если установлено значение LINTER_MBX, то ядро и приложение для обмена данными будут использовать именно этот идентификатор. Таким образом возможен запуск нескольких ядер и приложений, работающих с несколькими ядрами.

3.Запустить ядро для вспомогательной базы данных, выполнить запросы из файла dict/arepl.sql, перестартовать ядро. LINTER_MBX должен быть задан во время выполнения этих действий и быть одинаковым.

4.Удалить переменную окружения LINTER_MBX.

Вспомогательная база данных должна быть создана на источнике и приемнике.

14.3. Настройка nodetab

Теперь необходимо настроить файл конфигурации сетевого агента и сервера репликации nodetab. Он должен располагаться в каталоге bin дерева дистрибутива.

1.Добавить строку RDSTG local 12345 где RDSTG - условное имя вспомогательной БД на данной машине, local - ключевое слово, 12345 идентификатор механизма обмена(п. 16.2).

2.Добавить строку REMOTEDB ATCPIP my_name.my_domain 1080 где REMOTEDB -

условное имя удаленной основной базы данных. ATCPIP - ключевое слово для задания TCPIP протокола обмена, my_name.my_domain - адрес удаленного сервера, 1080 - порт удаленного сервера. Если база данных будет только приемником данных, данный подпункт необязателен.

14.4.Создание нового сервера

Чтобы объявить новый сервер нужно запустить утилиту INL на источнике данных и набрать в командной строке:

sql> create server REMOTEDB;

!92

Практическое занятие 14 Настройка сервера репликации в среде UNIX

14.5. Запуск сетевого агента

Запустить сетевой агент dbc_tcp, возможно указав ему в командной строке точное расположение nodetab. Это необходимо проделать на источнике и приемнике.

14.6. Запуск сервера репликации

Запустить сервер репликации lreplserver. В аргументах командной строки необходимо передать имя администратора-пароль основной и вспомогательной базы данных, условное имя вспомогательной БД ( RDSTG) из файла nodetab, путь к файлу nodetab, номер порта на котором сервер будет принимать удаленные соединения (номера портов для установления соединения задаются в nodetab), -daemon - для работы в фоновом режиме, уровень трассировки. Это необходимо проделать на источнике и приемнике.

14.7. Создание правила репликации

Допустим, у нас есть таблица TAB в базах данных источника и приемника. Структура таблиц должна быть одинаковой, должен присутствовать primary key . Допустим, таблица такая:

Create table tab ( i int primary key, c char(100));

Для основной базы-источника с помощью утилиты inl создаем правило репликации таблицы TAB:

create replication rule MYRULE for tab to tab on node

REMOTEDB async;

Это делается только на источнике.

14.8. Проверка работы репликации

Проверить работу системы репликации можно, изменив данные реплицируемой таблицы TAB базы-источниа, и проверив их изменение в базе приемнике. Для этого в командной строке утилиты inl наберем:

Insert into tab values (1,’текстовая строка’);

Через некоторое время (предположительно, меньше секунды) аналогичная запись должна появиться в таблице TAB в БД-приемнике.

14.9. Останов сервера репликации

Останов производиться в обратном порядке.

1.Остановить lreplserver (опция –down).

2.Остановить dbc_tcp (командой kill, pid процесса можно определить командой ps, или при старте указать на необходимость создания файла со значением pid).

3.

Остановить работу вспомогательной БД утилитой

shut. Для останова

 

вспомогательной БД необходимо указать тот же идентификатор обмена

 

(LINTER_MBX), что и при старте. После останова БД переменную окружения

 

LINTER_MBX необходимо удалить.

 

4.

Остановить работу ядра с основной базой данных.

 

E-mail: market@relex.ru

ЗАО НПП «РЕЛЭКС» http://www.relex.ru

Практическое занятие 13 Использование прекомпилятора встроенного SQL

!93

Это необходимо проделать на источнике и приемнике.

E-mail: market@relex.ru

ЗАО НПП «РЕЛЭКС» http://www.relex.ru

!94

Практическое занятие 14 Настройка сервера репликации в среде UNIX

Для заметок

E-mail: market@relex.ru

ЗАО НПП «РЕЛЭКС» http://www.relex.ru

Практическое занятие 13 Использование прекомпилятора встроенного SQL

!95

E-mail: market@relex.ru

ЗАО НПП «РЕЛЭКС» http://www.relex.ru

!96

Практическое занятие 14 Настройка сервера репликации в среде UNIX

E-mail: market@relex.ru

ЗАО НПП «РЕЛЭКС» http://www.relex.ru

Практическое занятие 13 Использование прекомпилятора встроенного SQL

!97

E-mail: market@relex.ru

ЗАО НПП «РЕЛЭКС» http://www.relex.ru

!98

Практическое занятие 14 Настройка сервера репликации в среде UNIX

E-mail: market@relex.ru

ЗАО НПП «РЕЛЭКС» http://www.relex.ru

Практическое занятие 13 Использование прекомпилятора встроенного SQL

!99

E-mail: market@relex.ru

ЗАО НПП «РЕЛЭКС» http://www.relex.ru

!100

Практическое занятие 14 Настройка сервера репликации в среде UNIX

E-mail: market@relex.ru

ЗАО НПП «РЕЛЭКС» http://www.relex.ru