Сборка мусора (Архив)
Сборка мусора — это процедура очистки базы данных от лишней информации, которая попадает в базу при длительном использовании. Сборка мусора не подразумевает удаление каких-либо действующих данных, а только устраняет так называемые ошибки перезаписи, которые влекут за собой излишнее использование базой данных дискового пространства.
Содержание
[убрать]Как выполнить сборку мусора?
Сборку мусора можно выполнить двумя путями. Первый способ выполнения этой процедуры — использование соответствующей функции утилиты администрирования базы данных; второй — резервирование и последующее восстановление базы из резервной копии с помощью утилиты резервного копирования.
Утилита администрирования базы данных
Чтобы выполнить сборку мусора с помощью утилиты администрирования базы данных, закройте все подключения к базе данных и запустите утилиту. Выполните следующие действия:
- В поле DNS-имя сервера (IP-адрес) укажите имя или IP-адрес компьютера, на котором установлен ваш сервер Такси-Мастер.
- В поле База данных укажите полный абсолютный путь к базе данных.
- Нажмите Тест.
Если утилита выдаст сообщение «База данных готова для обработки», вы можете приступать к сборке мусора. Если же утилита выдает сообщение об ошибке, прочитайте это сообщение и примите соответствующие меры. О них см. ниже.
После удачного подключения выполните следующие действия:
- Откройте вкладку Сборка мусора.
- Нажмите кнопку Собрать.
- Дождитесь сообщения об успешном завершении сборки мусора.
Утилита резервного копирования
Чтобы выполнить сборку мусора с помощью утилиты резервного копирования, закройте все подключения к базе данных и запустите утилиту. Выполните следующие действия:
- Создайте задачу на резервное копирование базы данных, либо выберите уже существующее, соответствующее той базе, которую нужно очистить от мусора.
- Нажмите кнопку Резервировать (или комбинацию клавиш Ctrl + B).
- Дождитесь завершения процесса резервирования.
- Нажмите кнопку Восстановить (или комбинацию клавиш Ctrl + R).
- В открывшемся окне выбора файла укажите путь к созданной только что резервной копии.
- В диалоговом окне с предупреждением «Вы уверены, что хотите заменить текущую базу данных на резервную копию?» нажмите Да.
- Дождитесь завершения процесса восстановления.
Если база данных на каком-либо из этапов поддерживает хотя бы подключение (например, на каком-либо из рабочих мест не закрыта копия Такси-Мастер), вы можете увидеть сообщение об ошибке. Чтобы корректно провести процедуру сборки мусора с помощью утилиты резервного копирования, убедитесь в том, что все подключения к базе закрыты, и проведите процедуру с начала.
Для чего выполнять сборку мусора?
Часто из-за возникающих время от времени ошибок перезаписи или других неточностей занесения данных в базу ее размер увеличивается несколько быстрее, чем в действительности должен. Однако, первостепенная проблема состоит в том, что из-за скопившегося «мусора» база данных может работать некорректно и способствовать возникновению проблем. Чтобы избежать этого, нужно периодически (например, один раз в неделю) выполнять сборку мусора.
Помимо прочего, процедура сборки мусора может своевременно показать, в каком состоянии находится база данных. База в силу разных причин может потерять возможность восстановления из собственной резервной копии. В этом случае нужно восстанавливать базу данных.
Возможные проблемы
При проведении сборки мусора могут возникнуть различного рода проблемы, о которых сигнализируют сообщения об ошибках:
Сообщение | Причина | Решение |
---|---|---|
База данных сейчас используется (активных соединений: 1). Восстановление невозможно. | Утилита резервного копирования обнаружила поддерживаемое подключение к базе данных (их может быть несколько). | Закрыть все копии Такси-Мастер, утилиту администрирования базы данных и прочие программы, которые могут подключаться к базе данных. |
... Не удается найти указанный файл. | Утилита администрирования базы данных не может найти файл, соответствующий базе данных. | Проверьте правильность указания пути к базе. Проверьте, доступен ли сервер Такси-Мастер по сети, запущен ли Firebird, а также правильно ли указан путь к базе. |