Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
база данных.docx
Скачиваний:
167
Добавлен:
24.03.2015
Размер:
5.83 Mб
Скачать

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

Реп тикация баз данных применяется для создания специальных «горячих» копий БД средствами Access. С помощью репликации можно легко получать новые копии БД, используемые как на одном компьютере, так и в сети. От­дельные копии (реплики) требуется периодически синхронизировать.

Понятие о репликации

Репликацией называют создание специальных копий (реплик) базы дан­ных Access, с которыми пользователи могут одновременно работать на раз­ных рабочих станциях. Отличие репликации от обычно! о копирования фай­лов ОС (в том числе файлов БД) заключается в том, что для каждой реплики возможна синхронизация с остальными репликами. В случаях, когда для хра нения реплик БД используется папка ПортсЬель (Mv Briefcase), репликацию БД называют портфельной репликацией. Для использования этой реплика ции на р хбочем столе системы до 1жен быть создан портфель, если его там нет. Это можно сделать с помощью контекстного меню, вызванного на рабо­чем столе.

По одной базе данных можно создать набор реплик. В наборе различают ос­новную реплику и дополнительные реплики. Основная реплика отличается от обычной (дополнительной) реплики тем, что в ней можно изченятъ стржти ру БД. Основную реплику можно сделать обычной, а дополнительную репли ку - основной, но в любой момент времени в наборе реплик одна реплика яв­ляется основной, а остальные — дополнительными. Дополнительные реплики м< 1ЖНО создавать из основной и дополнительных реплик.

Создание основной реплики состоит в пр< образовании файла исходной БД в новый файл. Исходную базу данных будем называть реп тцируемой. Если основную реплику назвать тем же именем, что и исходная (реплицируемая) БД, то последняя пропадет. Для безопасности перед проведением нреооразо вания целесообразно создать резервную копию исходного фай та БД. Если пользователь не создал резервную копию исходной БД до начала реплика­ции, он может это сделать в процессе ее выполнения.

В ходе репликации в файл исходной БД добав ляются специальные табли­цы, поля и свойства. После репликации исходная база данных становится основной репликой в наборе реплик. Основная и дополнительная реплики могут содержать реплицируемые и не реплицируемые (локальные) объекты. Полученная основная реплика с точки зрения раооты пользователя не отли­чается от исходной БД.

При репликации базы данных Access добавляет системные таблицы (на­пример, MsysSidetables. MsvsSchemaProb, MSysReplicas;, изменять содержи­мое большинства из которых пользователю не рекомендуется. Эти таблицы могут быть видимыми или невидимыми, в зависимости от того, как установ­лен флажок Системные объекты (System Objects) на вкладке Вид (View).

В каждую таблицу реплицированной БД добавляются следующие систем­ные поля:

•s GUID — глобальный уникальный идентификатор каждой записи;

•s Col Lineage, s_ Lineage — двоичные поля, содержащие информацию об истории изменения записей;

•s Generation — поле, содержащее информацию о • рупповых изменениях.

Реплицироваться могут все объекты БД: таблицы, формы, запросы, отче­ты, макросы и модули. В наборе реплик реплицируемыми должны быть одни и те же объекты. Каж цая из реплик может содержать свои собственные ло­кальные объекты, структура и содержание которых не передается в другие реплики. Признак реплицируемисти объекта БД устанавливается Access пу­тем изменения свойств объектов или программно с помощью программных интерфейсов к специальным объектам (см. далее). Изменение структуры реп- лищтуемых объектов, а также содержимого БД основной реплики по специ альным командам синхронизации передается во все дополнительные репли­ки. Схема образования основной реплики показана на рис. 10.35.

Рис. 10.35. Схема образования основной реплики

Репликация базы данных позволяет обмениваться изменениями отдель ных ее копий и может применяться для следующих целей.

  1. Распространение приложений. Все изменения существующих объектов и добавление новых объектов БД выполняются в основной реплике. В сеансе синхронизации между репликами последние изменения распрос­траняются на объекты дополнительных реплик набора.

  2. Доступ к данным. Пользователи, работающие на переносных компьюте­рах и ьмеющи° оеплики основной БД, после подключения к сети могут провести синхронизацию внесенных ими на переносных компьютерах не­прав. гений с изменениями общей реплики.

  3. Резервное копирование. Поместив реплику на другом компьютере, мож­но организоватъ резервное копирование данных основной базы В отли­чие от стандартных методов копирования, которые не позволяют рабо­тать с БД во время резервного копирования, репликация разрешает вносить изменения даже во время синхронизации.

  4. Перераспределение нагрузки и распараллеливание работы пользовате­лей. Размещение реплик БД на дополнительных сетевых серверах и при- креп. [ение к ним части пользователей позволяет равномерно распреде­лить нагрузку на серверы. Одновременная работа группы пользователей с репликами одной БД позволяет распараллелить работу и ускорить ре­

  5. шение некоторых задач при работе с ней, например, ввод большого числа исходных данных.

Синхронизацией называют процесс обновления двух компонентов в набо­ре реплик, при котором производится обмен обновленными записями и объек­тами из каждого компонента. Access одной командой позволяет выполнить синхронизацию между двумя репликами одного набора. 11ри этом можно син­хронизировать между собой две дополнительные реплики. Схема синхрони­зации реплик показана на рис. 10.36.

Основная реплика БД