Основными способами обслуживания БД в Access 2002 являются следующие: копирование, восстановление и сжатие (компрессия) баз данных.
Копирование баз данных применяется для защиты их от случайной потери. Для создания копий можно использовать также репликацию.
Копии БД можно хранить в сжатом виде, для чего используют программы-архиваторы. Это позволяет сэкономить дисковое пространство, но увеличивает время на получение архивной копии и восстановление информации из архивов.
Восстановление применяется при повреждениях БД, не позволяющих пользователю нормально работать с базой данных или даже открывать ее. Одной из причин повреждения может быть воздействие компьютерных вирусов или наличие дефектов (физических или логических) на диске. Весьма вероятной причиной повреждения файла базы данных является выключение питания компьютера до предварительного закрытия сеанса работы с базой данных Access.
Повреждение базы данных Access в большинстве случаев определяется при попытках пользователя открыть, сжать, зашифровать или дешифровать БД. В некоторых ситуациях сразу не удается определить, что база данных повреждена. Если база данных ведет себя непредсказуемо, то, скорее всего, она требует своего восстановления.
Сжатие базы данных средствами Access отличается от сжатия с помощью архиваторов и состоит в освобождении места на диске от удаленных из базы данных записей. Более подходящими, на наш взгляд, здесь являются термины «реорганизация», «реструктурирование» или «реструктуризация» БД.
Для компрессии и восстановления данных необходимо сделать следующее:
1. Закрыть базу данных (это желательно, но вовсе не обязательно). При работе в сети убедиться, что другие пользователи тоже закрыли ее.
2. Создать резервную копию базы данных.
3. Выдать команду Сервис | Служебные программы | Сжать и Восстановить (Tools | Database Utilities | Compact and Repair Database).
4. В диалоговом окне выбрать нужную БД и нажать кнопку Сжать (Compact).
Для сжатия или восстановления БД, защищенной паролем, естественно, требуется предварительно ввести пароль.
Репликация баз данных применяется для создания специальных «горячих» копий БД средствами. С помощью репликации можно легко получать новые копии БД, используемые как на одном компьютере, так и в сети. Отдельные копии (реплики) требуется периодически синхронизировать.
Репликацией называют создание специальных копий (реплик) БД Access, с которыми могут одновременно работать на различных станциях. Отличие репликации от обычного копирования файлов ОС заключается в том, что для каждой реплики возможна синхронизация с остальными репликами.
По одной БД можно создать набор реплик. В наборе различают основную реплику и дополнительные реплики. Основная реплика отличается от обычной реплики тем, что в ней можно изменять структуру БД. Основную реплику можно сделать обычной, а дополнительную – основной, но в любой момент времени в наборе одна реплика является основной, а остальные – дополнительными. Дополнительные реплики можно создавать из основной и дополнительных.
Создание основной реплики состоит в преобразовании файла исходной БД в новый файл. Исходную БД будем называть реплицируемой. Если основную реплику назвать тем же именем, что и исходная БД, то последняя пропадет. Для безопасности перед проведением преобразования целесообразно создать резервную копию исходного файла БД. Если пользователь не создал резервную копию исходной БД до начала репликации, он может это сделать в процессе ее выполнения.
В ходе репликации в файл исходной БД добавляются специальные таблицы, поля и свойства. После репликации исходная БД становится основной репликой в наборе реплик. Основная и дополнительная реплики могут содержать реплицируемые и не реплицируемые объекты.
При репликации БД Access добавляет системные таблицы, изменять содержимое большинства из которых пользователю не рекомендуется. Эти таблицы могут быть видимыми или невидимыми, в зависимости от того, как установлен флажок Системные объекты.
В каждую таблицу реплицированной БД добавляются следующие системные поля:
· s_GUID – глобальный уникальный идентификатор каждой записи;
· s_ColLineage, s_Lineage – двоичные поля, содержащие информацию об истории изменения записей;
· s_Generarion - поле, содержащее информацию о групповых изменениях.
Реплицироваться могут все объекты БД: таблицы, формы, записи, отчеты, макросы, модули. В наборе реплик реплицируемыми должны быть одни и те же объекты. Каждая из реплик может содержать свои собственные локальные объекты, структура и содержание которых не передается в другие реплики. Признак реплицируемости объекта БД устанавливается Access путем изменения свойств объектов или программно с помощью программных интерфейсов к специальным объектам. Схема образования основной реплики:
Репликация БД позволяет обмениваться изменениями отдельных ее копий и может применяться для следующих целей.
1. Распространение приложений. Все изменения существующих объектов и добавление новых объектов БД выполняется в основной реплике. В сеансе синхронизации между репликами последние изменения распространяются на объекты дополнительных реплик набора.
2. Доступ к данным. Пользователи, работающие на переносных компьютерах и имеющие реплики основной БД, после подключения к сети могут провести синхронизацию внесенных ими на переносных компьютерах исправлений с изменениями общей реплики.
3. Резервной копирование. Поместив реплику на другом компьютере, можно организовать резервное копирование данных основной базы. В отличие от стандартных методов копирования, которые не позволяют работать с БД во время резервного копирования, репликация разрешает вносить изменения даже во время синхронизации.
4. Перераспределение нагрузки и распараллеливание работы пользователей. Размещение реплик БД на дополнительных сетевых серверах и прикрепление к ним части пользователей позволяет равномерно распределять нагрузку на серверы. одновременная работа группы пользователей с репликами одной БД позволяет распределять работу и ускорить решение некоторых задач при работе с ней, например, ввод большого числа исходных данных.
Синхронизацией называют процесс обновления двух компонентов в наборе реплик, при котором производится обмен обновленными записями и объектами из каждого компонента. Access одной командой позволяет выполнить синхронизацию между двумя репликами одного набора. При этом можно синхронизировать между собой две дополнительные реплики.
Схема синхронизации реплик:
После завершения синхронизации изменения, внесенные в один компонент, оказываются внесенными в другой компонент. Обе реплики становятся идентичными. Исключение могут составлять локальные объекты. В случаях, когда создается более двух реплик, для упрощения управления поддержанием соответствия структур и содержания реплик, синхронизации предпочтительно выполнять через основную реплику. В противном случае реплики набора быстро «разойдутся» и обеспечить их идентичность будет сложно.
Разумной схемой синхронизации нескольких реплик является выполнение синхронизации данных с основной репликой, избегая синхронизации напрямую с другими дополнительными репликами. При этом все последние изменения БД всегда имеются в основной реплике. Архивирование БД лучше свести к архивированию БД основной реплики, а не создавать множество различающихся архивов дополнительных реплик.
Синхронизацию структур набора реплик целесообразно выполнять через основную реплику. Во всех репликах, в том числе и основной, допускается создание и изменение локальных объектов.
Для защиты реплицированной БД можно использовать защиту на уровне пользователя, которая позволяет определять права пользователей на ее объекты. БД, защищенную паролем, нельзя реплицировать.
Вернутся в содержание.
Скачано с www.znanio.ru
© ООО «Знанио»
С вами с 2009 года.