как использовать db2 для чтения в режиме ожидания - PullRequest
0 голосов
/ 05 октября 2018

В IBM DB2 есть функция для базы данных HADR - чтение в режиме ожидания.Это позволяет подключать резервную базу данных для запросов только для чтения (с определенными ограничениями на типы данных и уровни изоляции)

Я пытаюсь настроить это как источник данных в приложении, которое выполняется в профиле свободы websphere.

Ранее это приложение использовало автоматический перенаправление клиента (которое гарантирует, что все соединения направлены на текущий основной)

Однако я хотел бы настроить его таким образом, чтобы яможет иметь потоки SELECT / только для чтения для запуска в резервной базе данных, а другие - для первичной.Это также должно работать, когда поглощение выполнено в базе данных (то есть резерв становится первичным и наоборот).Цель этого состоит в том, чтобы разделить количество созданных соединений между всеми доступными базами данных

Как правильно это сделать?

Что я пытался сделать (предположим, мои серверы - это dbserver1 и dbserver2):

  1. Создайте 2 источника данных, один с URL-адресом db dbserver1, а другой с dbserver2.

    • Это работает до тех пор, пока не будет выполнен захват и ролисерверы переключаются.
  2. Создайте 2 источника данных, один с URL-адресом базы данных dbserver1 (с параметрами автоматического перенаправления клиента), а другой только с dbserver2.

    • При такой конфигурации приложение работает нормально, но если dbserver2 становится основным, то все запросы к нему выполняются.
  3. Настройка haproxy и использованиеэто определить, что является основным, а какой резервным.Создайте 2 источника данных, указывающих на haproxy

    • Когда в базе данных выполняется захват, возникают исключения соединения (не только во время захвата, но и в течение некоторого времени после него)

1 Ответ

0 голосов
/ 05 октября 2018

Соответствующий способ описан в официальном документе « Включение непрерывного доступа для чтения в резервных базах данных с использованием виртуальных IP-адресов », связанных с документацией Db2 для чтения в режиме ожидания .

Виртуальные IP-адреса назначаются обеим ролям, основной и резервной.Они каталогизированы как псевдонимы базы данных.Websphere или другие клиенты будут подключаться к первичному или резервному источнику данных.Когда происходит захват или отработка отказа, виртуальные IP-адреса переназначаются на конкретный сервер.Клиент будет продолжать маршрутизироваться на нужный сервер, например, на резервный.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...