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

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

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

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

В этой статье

Why you compact and repair a database

Before you begin

Compact and repair a database

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

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

Файлы базы данных увеличиваются в размере по мере использования

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Примечание: You can set a database option that causes the Compact and Repair feature to run automatically each time you close a particular database. If you are the only user of a database, you should set this option. In multiuser databases, you might not want to set this option, because it can momentarily disrupt database availability.

Top of Page

Подготовка

Перед запуском операции сжатия и восстановления рекомендуется выполнить указанные ниже действия.

  • Always make a backup    During the repair process, Access may truncate some data from tables that are damaged. It is sometimes possible to recover this data from a backup. In addition to your regular backup strategy, you should make a backup before you use the Compact and Repair command. You can make a backup by using the Back Up Database command:

    • Нажмите кнопку Microsoft Office  Изображение кнопки Office , наведите указатель на пункт Управление, а затем в разделе Управление этой базой данных нажмите Резервное копирование базы данных.

  • Automatically compact and repair    Unless you are sharing a single database file with other users on a network, you should set your database to automatically compact and repair.

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

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

  • Obtain exclusive access to your database to use the Compact and Repair command    If you are the only person who uses your database, you can skip the rest of this section and go directly to Compact and repair a database.

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

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

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

Top of Page

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

Automatically compact and repair a database when it closes

Manually compact and repair a database

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

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

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

  1. Нажмите кнопку Microsoft Office Изображение кнопки Office , а затем — Параметры Access.

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

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

Top of Page

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

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

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

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

  • Click the Microsoft Office Button Изображение кнопки Office , point to Manage, and then, under Manage this database, click Compact and Repair Database.

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

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

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

  2. Click the Microsoft Office Button Изображение кнопки Office , point to Manage, and then, under Manage this database, click Compact and Repair Database.

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

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

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

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

C:\Program Files\Microsoft Office\Office12

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

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

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

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

    For example, type:"C:\Program Files\Microsoft Office\Office12\msaccess.exe"

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

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

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

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

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

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

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

Top of Page

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

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

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

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

×