С какими ключами рекомендуется запускать утилиту testdb («Тестирование базы данных»)?
По умолчанию утилита testdb запускается с очень небольшим размером пула. Для существенного ускорения работы рекомендуется задавать пул ключом -p
<кол-во страниц> (размер указывается в страницах по 4 Кбайт), например: testdb.exe -p 100000 c:\Linter\db\demo
Если тестирование БД выполняется не очень долго (несколько минут) и проблем в БД не ожидается, то в первый раз лучше запустить утилиту testdb («Тестирование базы данных») без дополнительных ключей.
Если в БД выявлены проблемы и эти проблемы могут быть устранены утилитой, то запуск testdb без дополнительных ключей выдаст в конце работы рекомендацию (на консоль, также и в log-файл, если задать ключ -f
), с какими ключами нужно запустить testdb повторно, например:
Ошибки могут быть исправлены утилитой TESTDB. Запустите TESTDB с ключом -r. Ошибки могут быть исправлены с помощью SQL-файла корректировки. Запустите TESTDB с ключом -s имя_файла, а затем выполните полученный SQL-файл при активном Линтере через Linter Desktop или INL. Для исправления предупреждений в битовых картах используйте ключи -r -ds. Для стирания сильно поврежденных данных используйте ключи -r -dr. Для удаления лишних файлов используйте ключи -r -de. Для удаления таблиц, файлы которых не существуют, используйте ключи -r -s ИМЯ_ФАЙЛА.sql -dt. Для удаления индекса используйте ключи -r -t table_name -di. Для удаления поврежденных записей SECURITY используйте ключи -r -da -s ИМЯ_ФАЙЛА.sql. Для удаления неверных ссылок используйте ключи -df -s ИМЯ_ФАЙЛА.sql.
Если нужно автоматизировать процесс тестирования БД, то после первого выполнения утилиты testdb можно поискать с помощью команды grep
в log-файле рекомендации и, при их наличии, повторно выполнить утилиту testdb с указанными ключами, а затем, возможно, запустить СУБД и выполнить сгенерированный утилитой testdb SQL-скрипт корректировки БД.
Если объем БД большой и требуется выполнить проверку за короткой время, то можно провести проверку только системных таблиц и только "описания таблиц". Для этого можно добавить в строку запуска утилиты testdb следующие ключи:
-
ключ
-ts
для задания тестирования только системных таблиц БД; -
ключ
-td
для задания тестирования только описания таблиц (но не их содержимого).
Описание проверок, которые выполняет утилита с данными ключами приведено в документе «СУБД ЛИНТЕР. Тестирование базы данных».