Репликация баз данных Access


В начале главы были приведены основные понятия репликации файлов. Если говорить именно о репликации баз данных средствами Access, то репликой в данном случае называется каждая копия реплицированной базы данных. Каждая реплика базы данных содержит общий (для всех реплик базы данных) набор таблиц, запросов, форм, отчетов, страниц доступа к данным, макросов и модулей. Изменения данных таблицы, сделанные в одной из реплик, передаются в другие реплики. Каждая реплика может также содержать локшьные объекты, которые существуют только в этой реплике.
Отдельная реплика является компонентом набора регьтк и допускает синхронизацию с другими репликами в наборе. В наборе реплик выделяется главная реплика, она называется основной. Основная реплика является главным компонентом набора реплик и используется для создания первой реплики в наборе. В основную реплику добавляются системные таблицы, системные поля и свойства репликации. Изменение структуры базы данных допускается только в основной реплике. Другие реплики в том же наборе также могут быть назначены основными репликами, но в каждый момент времени в наборе реплик должна быть только одна основная реплика. Основная реплика и все остальные реплики имеют общую структуру базы данных и уникальный идентификатор набора реплик.
Синхронизацией в данном случае называется процесс обновления двух компонентов набора реплик, при котором происходит взаимный обмен обновленными записями и объектами. После синхронизации двух компонентов набора реплик изменения из каждой реплики оказываются примененными в другой реплике.
Частичная реплика — база данных, содержащая подмножество записей полной реплики. С помощью частичной реплики пользователь имеет возможность устанавливать фильтры и задавать отношения, определяющие, какое подмножество записей полной реплики должно входить в базу данных.
Область видимости. Реплики по области видимости разделяются на три типа: глобальные, локальные и анонимные. Тип реплики определяет ряд важных характеристик реплики, например: типы реплик, которые могут создаваться по данной реплике, может ли данная реплика стать основной репликой в наборе реплик, а также, как в ней обрабатываются конфликты при синхронизации. Возможные типы, реплик описаны в.
Приоритет реплики — это специальная характеристика реплики базы данных, определяющая относительный приоритет реплики в наборе реплик. Приоритет выражается целым положительным числом. Приоритет реплик учитывается при разрешении конфликтов, возникших в процессе синхронизации реплик. Подробнее о приоритетах рассказано в справочной системе Access 2010.
Типы реплик по области видимости

Тип реплики

Описание

Глобальная (global) реплика

Реплика, по которой можно создавать реплики всех остальных типов. При репликации базы данных первая создаваемая реплика (основная реплика) является глобальной репликой. Изменения, внесенные в глобальную реплику, отслеживаются полностью; возможен обмен этими изменениями с любой другой глобальной репликой в наборе. Глобальная реплика может также обмениваться изменениями с любой локальной или анонимной репликой, для которой она становится разветвителем. Раз-ветвителем называется глобальная реплика, с которой все реплики в наборе синхронизируют свои изменения

Локальная (local) реплика

Реплика, в которой выводятся только данные из этой реплики и не отображаются данные из других реплик в наборе, в том числе из основной реплики. Локальная реплика синхронизирует свои данные с разветвителем, который является глобальной репликой. Синхронизация локальных реплик с другими репликами в наборе не разрешена. Если изменения в локальной реплике конфликтуют с глобальной репликой-разветвителем, эти изменения автоматически теряются в любом процессе устранения конфликтов

Анонимная (anonymous) реплика

Особый тип реплик в базах данных Microsoft Access, для которых не ведется отслеживание отдельных пользователей. Анонимные реплики особенно удобны при работе в Интернете, когда ожидается загрузка реплик многими пользователями

Выполнение действий, связанных с созданием, синхронизацией и управлением репликами в Access, осуществляется с помощью команд меню Сервис, Репликация (Tools, Replication).
 
Создание реплик базы данных
Основная и обычная реплики базы данных создаются в Access одинаковым способом: с помощью команды меню Сервис, Репликация, Создать реплику (Tools, Replication, Create Replica). Частичная реплика создается с помощью специального мастера. Об этом рассказано . Новую реплику можно создать на основе любой существующей реплики. В любое время основной репликой можно назначить другую реплику в наборе. Основная реплика отличается от обычной. В основной реплике разрешено изменение структуры объектов базы данных и схемы данных, а в обычной и частичной репликах — только просмотр структуры объектов и схемы данных. Но вводить, удалять и изменять данные разрешено во всех репликах в наборе.
Чтобы создать реплику базы данных:

  1. Откройте базу данных, предназначенную для репликации, например базу данных "Борей" (Northwind). Если работа идет в многопользовательской среде, то следует убедиться в том, что все остальные пользователи закрыли эту базу данных. Если база данных защищена паролем, то его необходимо удалить. Чтобы создать новую реплику в наборе реплик, откройте созданную ранее основную или обычную реплику.
  2. Выберите команду Сервис, Репликация, Создать реплику (Tools, Replication, Create Replica).
  3. Появится диалоговое окно с требованием подтверждения закрытия базы данных. Нажмите кнопку Да (Yes).

Замечание
Если команда Сервис, Репликация, Создать реплику используется для создания реплики еще нереплицированной базы данных, то в результате ее выполнения база данных будет преобразована в основную реплику, а затем для нее будет создана первая обычная реплика. В этом случае после требования о закрытии базы данных будет отображено сообщение с вопросом о создании резервной копии базы данных. Рекомендуем создать резервную копию базы данных перед ее репликацией. Для этого нажмите кнопку Да (Yes).

  1. Появится диалоговое окно Размещение новой реплики (Location of New Replica) . Укажите папку для размещения новой реплики. Если нужно, измените имя файла реплики, заданное по умолчанию.
  1. Чтобы задать приоритет реплики, нажмите кнопку Приоритет (Priority). Появится диалоговое окно, представленное на. Введите приоритет реплики и нажмите кнопку ОК.
  1. Если требуется запретить пользователям удалять записи из таблиц в реплике, установите флажок Запретить удаление (Prevent delets).
  2. Чтобы задать область видимости реплики, выберите необходимый элемент в раскрывающемся списке Тип файла (Save as type).
  1. Нажмите кнопку ОК. Начнется процесс создания реплики. После его завершения, возможно, появится пояснительное сообщение с текстом "Изменения структуры базы данных допускаются только в основной реплике; изменения данных могут выполняться как в основной, так и в любой другой реплике набора". Нажмите кнопку ОК.

Если база данных не была реплицированной, в результате работы Access она преобразуется в основную реплику и отобразится на экране. Кроме того, будет создана первая реплика с указанным именем (шаг 4). Если текущая база данных уже была репликой, в результате работы Access на ее основе будет создана новая реплика с указанным именем. В реплику добавляются системные таблицы и поля, специально предназначенные для поддержки реплики.