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

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

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

Что вы хотите сделать?

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



Зачем сжатие и восстановление базы данных
файлы базы данных растет с помощью
файлы базы данных могут быть повреждены

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

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

Подготовка

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

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

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

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

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

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

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

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

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

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

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

  4. Нажмите кнопку ОК.

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

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

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

  • Выберите "Файл>в >"& базы данных восстановления".

    Access создаст копию сжатой и восстановленной базы данных в одном месте.

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

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

Используйте эту процедуру, если не можете открыть базу данных Access напрямую.

  1. Убедитесь, что другие пользователи в данный момент не используют файл базы данных.

  2. Запустите Access.

  3. В Access 2013, Access 2016 и Access 2019

    1. На странице шаблонов дважды щелкните пустую базу данных.

    2. Выберите "Файл >закрыть".

  4. Выберите "Работа с базами данных> сжатие и восстановление базы данных.

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

Access создаст копию сжатой и восстановленной базы данных в одном месте.

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

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

Если Access запросит сжатие и восстановление базы данных, при попытке открыть поврежденный файл базы данных выберите "Да". Могут произойти два вещи:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Защита данных с помощью резервного копирования и восстановления, настройка

общих пользовательских параметров

Нужна дополнительная помощь?

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

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

Насколько вы удовлетворены качеством перевода?
Что повлияло на вашу оценку?

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

×