Предотвращение и исправление проблем с файлами баз данных с помощью команды «Сжать и восстановить»

Предотвращение и исправление проблем с файлами баз данных с помощью команды «Сжать и восстановить»

Важно :  Данная статья переведена с помощью машинного перевода, см. Отказ от ответственности. Используйте английский вариант этой статьи, который находится здесь, в качестве справочного материала.

Базы данных могут быстро увеличиваться в размере по мере использования, что иногда снижает их быстродействие. Кроме того, они могут повреждаться. Для предотвращения и исправления таких проблем можно использовать команду Microsoft Office Access Сжать и восстановить базу данных.

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

Примечание : После сжатия и восстановления уже опубликованной веб-базы данных не забудьте синхронизировать ее. Сжатие и восстановление могут не устранить все проблемы, возникающие с опубликованной веб-базой данных.

В этом разделе...

Зачем нужно сжимать и восстанавливать базу данных

Подготовка

Сжатие и восстановление базы данных

Зачем нужно сжимать и восстанавливать базу данных

Команда Сжать и восстановить базу данных помогает предотвратить и исправить следующие проблемы, которые могут возникнуть с базой данных: увеличение размеров файлов по мере использования и повреждение файлов.

Увеличение размера файлов базы данных по мере использования

По мере добавления и обновления данных, а также изменения их структуры размер файла базы данных увеличивается. Это происходит отчасти из-за добавления новых данных, а отчасти — по другим причинам:

  • Access создает временные скрытые объекты для выполнения различных задач. Иногда временные объекты остаются в базе данных, когда они уже не нужны.

  • При удалении объекта базы данных занимаемое им место на диске автоматически не освобождается — файл базы данных по-прежнему занимает место на диске даже после удаления.

По мере заполнения файла базы данных остатками временных и удаленных объектов его быстродействие может снизиться. Объекты могут открываться медленнее, а запросы и операции — выполняться дольше обычного.

Примечание : При сжатии сами данные не сжимаются — файл базы данных становится меньше за счет удаления неиспользуемого пространства.

Повреждение файлов базы данных

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

Зачастую такого рода повреждения вызваны проблемой с модулем Visual Basic для приложений (VBA) и не приводят к потере данных. Однако они могут привести к нарушению структуры базы данных, например потере кода VBA или ошибкам форм.

Иногда повреждение файла базы данных приводит к потере данных. Обычно эта потеря ограничивается потерей последнего действия одного пользователя, то есть единичного изменения данных. Когда пользователь начинает изменять данные и изменение прерывается (например, из-за отказа сетевой службы), Access помечает файл базы данных как поврежденный. Файл можно восстановить, но после восстановления некоторые данные могут отсутствовать.

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

Запрос на восстановление поврежденного файла базы данных

При попытке открыть поврежденный файл базы данных выводится запрос на автоматическое восстановление файла. Для восстановления и открытия поврежденного файла базы данных можно также вручную запустить команду Сжать и восстановить базу данных.

Если Access полностью восстановит поврежденный файл, отобразится сообщение об успешном восстановлении и необходимости проверить содержимое базы данных, чтобы убедиться в правильности данных.

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

Примечание : Вы можете настроить автоматическое выполнение команды "Сжать и восстановить базу данных" при каждом закрытии определенной базы данных. Если вы являетесь единственным пользователем базы данных, следует включить этот параметр. В многопользовательских базах данных этот параметр включать не стоит, поскольку это может привести к кратковременному нарушению доступа к базе данных.

К началу страницы

Подготовка

Перед началом сжатия и восстановления рекомендуется сделать следующее:

  • Всегда создавайте резервные копии.    В ходе восстановления Access может удалить некоторые данные из поврежденных таблиц. Иногда эти данные можно восстановить из резервной копии. В дополнение к обычным процедурам резервного копирования следует создавать резервную копию перед выполнением команды Сжать и восстановить базу данных. Резервную копию можно сделать с помощью команды Резервная копия базы данных:

    • На вкладке Файл нажмите кнопку Сохранить и опубликовать, а затем в разделе Дополнительно — кнопку Резервная копия базы данных.

  • Используйте автоматическое сжатие и восстановление.    Если к базе данных не открыт общий доступ по сети, для нее следует настроить автоматическое сжатие и восстановление.

  • Просмотрите системную таблицу ошибок восстановления.    Если Access не может восстановить некоторые объекты в поврежденном файле данных, они заносятся в таблицу под названием MSysCompactErrors. При наличии ошибок таблица MSysCompactErrors открывается в режиме таблицы.

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

  • Получите монопольный доступ к базе данных для выполнения команды Сжать и восстановить базу данных.    Если с базой данных работаете только вы, можно пропустить остальную часть этого раздела и сразу перейти к разделу Сжатие и восстановление базы данных.

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

    Сообщите пользователям, как долго они не должны работать с базой данных. Если вы регулярно выполняете сжатие и восстановление, отмечайте, как долго выполняется эта операция. Это позволит более точно оценить, как долго пользователи не должны работать с базой данных.

  • Получите разрешения для выполнения сжатия и восстановления.    Если вы используете файл базы данных более ранней версии и входите в состав рабочей группы, вероятно, вы не сможете сжать и восстановить базу данных самостоятельно. Если у вас нет нужных разрешений, обратитесь за помощью к администратору рабочей группы.

К началу страницы

Сжатие и восстановление базы данных

Автоматическое сжатие и восстановление базы данных при ее закрытии

Автоматическое сжатие и восстановление базы данных при ее закрытии

Чтобы автоматически сжимать и восстанавливать базу данных при ее закрытии, установите флажок Сжимать при закрытии.

Примечание : Этот параметр влияет только на открытую в данный момент базу данных. Его потребуется задать отдельно для каждой базы данных, которую вы хотите автоматически сжимать и восстанавливать.

  1. На вкладке Файл нажмите кнопку Параметры.

  2. В диалоговом окне Параметры Access щелкните элемент Текущая база данных.

  3. В разделе Параметры приложений установите флажок Сжимать при закрытии.

К началу страницы

Сжатие и восстановление базы данных вручную

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

Сжатие и восстановление открытой базы данных

Примечание : Если другие пользователи в настоящий момент работают с файлом базы данных, операцию сжатия и восстановления нельзя выполнить.

  • На вкладке Файл перейдите к разделу Сведения и нажмите кнопку Сжать и восстановить базу данных.

Сжатие и восстановление неоткрытой базы данных

Примечание : Если другие пользователи в настоящий момент работают с файлом базы данных, операцию сжатия и восстановления нельзя выполнить. Во время сжатия и восстановления никто не должен использовать файл базы данных.

  1. Запустите Access, но не открывайте базу данных.

  2. Выберите Сведения и нажмите кнопку Сжать и восстановить базу данных.

  3. В диалоговом окне База данных для сжатия перейдите к базе данных, которую вы хотите сжать и восстановить, и щелкните ее два раза.

Создание ярлыка на рабочем столе для сжатия и восстановления определенной базы данных

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

Прежде всего определите, где находится файл Msaccess.exe. Он обычно хранится в следующей папке:

C:\Program Files\Microsoft Office\Office14

Если в указанном расположении нет файла Msaccess.exe, найдите его и запишите полный путь к нему.

Создание ярлыка на рабочем столе    

  1. Щелкните правой кнопкой мыши рабочий стол, в контекстном меню выберите команду Создать, а затем — Ярлык.

  2. На первой странице мастера создания ярлыка в поле Укажите расположение объекта откройте кавычки ("), укажите полный путь к файлу Msaccess.exe (включая имя файла) и закройте кавычки. (Можно также нажать кнопку Обзор и выбрать нужный файл. В этом случае кавычки будут добавлены автоматически.)

    Например, введите: "C: \Program Files\Microsoft Office\Office14\msaccess.exe"

  3. После закрывающей двойной кавычки вставьте пробел и введите полный путь к базе данных, которую вы хотите сжать и восстановить. Если путь содержит пробелы, его необходимо заключить в двойные кавычки. Вставьте еще один пробел и введите /compact.

    Например, введите: "C:\Моя папка\Моя база данных.accdb" /compact

  4. Нажмите кнопку Далее.

  5. В поле Введите имя ярлыка введите имя для создаваемого ярлыка, а затем нажмите кнопку Готово.

    Мастер создаст ярлык и поместит его на рабочий стол.

  6. Когда вы захотите сжать и восстановить базу данных, дважды щелкните этот ярлык.

    Совет : Чтобы добавить ярлык рабочего стола в меню Пуск, щелкните ярлык правой кнопкой мыши и выберите в контекстном меню команду Закрепить в меню "Пуск".

К началу страницы

Примечание : Отказ от ответственности относительно машинного перевода. Данная статья была переведена с помощью компьютерной системы без участия человека. Microsoft предлагает эти машинные переводы, чтобы помочь пользователям, которые не знают английского языка, ознакомиться с материалами о продуктах, услугах и технологиях Microsoft. Поскольку статья была переведена с использованием машинного перевода, она может содержать лексические,синтаксические и грамматические ошибки.

Совершенствование навыков
Перейти к обучению
Первоочередный доступ к новым возможностям
Присоединиться к программе предварительной оценки Office

Были ли сведения полезными?

Спасибо за ваш отзыв!

Благодарим за отзыв! Возможно, будет полезно связать вас с одним из наших специалистов службы поддержки Office.

×