Протокол тестирования БД

В процессе тестирования БД утилита протоколирует все выполняемые ею действия (проверки) и выявляемые ошибки. Вид протокольной информации зависит от уровня трассировки (ключ -m) и от набора тестов (ключ -o).

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

Протокол тестирования БД включает:

  • имя тестируемой БД;

  • результаты тестирования системных таблиц и представлений;

  • результаты тестирования пользовательских таблиц и представлений;

  • по каждому объекту тестирования перечень выполненных проверок (проверка столбцов, проверка описания составных индексов, проверка файлов индексов, проверка файлов данных и т.д.);

  • диагностические сообщения о выявленных в БД нарушениях;

  • статистические данные о количестве дефектных объектов БД;

  • общие рекомендации по устранению выявленных дефектов.

Пример протокола тестирования (фрагмент):

Проверяется база данных "newdb "
База данных создана в версии 6.0.17
ПРЕДУПРЕЖДЕНИЕ
* Возможно, указано неверное значение длины очереди REL
ПРЕДУПРЕЖДЕНИЕ
* Возможно, указано неверное значение длины очереди ATR
ПРЕДУПРЕЖДЕНИЕ
* Возможно, указано неверное значение длины очереди FIL

Проверка системных таблиц...
Проверяется таблица #1 "SYSTEM"."$$$SYSRL"
Проверка столбцов...
Проверка описания составных индексов...
Проверка файлов индексов...
Проверка файлов данных...
Проверка целостности данных...
Проверка целостности индексов...
Проход по конвертеру для проверки полноты индекса
Проход по индексу для проверки совпадения данных
Проход по конвертеру для проверки полноты индекса
Проход по индексу для проверки совпадения данных
Проход по конвертеру для проверки полноты индекса
Проход по индексу для проверки совпадения данных
Проверка страниц длинных VIEW...
Проверка страниц Integrity...
Проверка страниц описаний файлов...

Проверка пользователей...
Проверяется пользователь #1 "SYSTEM"
Проверяется пользователь #2 "user"
Проверяется пользователь #3 "SYS"

Проверка остальных таблиц...
Проверяется таблица #4 "SYSTEM"."$$$TRIG"
Проверка столбцов...
Проверка описания составных индексов...
Проверка файлов индексов...
Проверка файлов данных...
Проверка целостности данных...
Проверяется таблица #5 "SYSTEM"."$$$PROC"
Проверка столбцов...
Проверка описания составных индексов...
Проверка файлов индексов...
Проверка файлов данных...
Проверка файлов BLOB...
Проверка целостности данных...
Проверка целостности BLOB...
ОШИБКА
* Таблица #28, битовая карта файла индексов #1, страница #1, бит #1
* Очищен бит для страницы, входящей в битовую карту или конвертер
ПРЕДУПРЕЖДЕНИЕ
* Таблица #28, битовая карта файла индексов #1, страница #1, бит #2
* Установлен бит для незаполненной страницы
ОШИБКА
* Таблица #28, битовая карта файла индексов #1, страница #1, бит #4
* Очищен бит для страницы, которой нет в файле
ОШИБКА
* Таблица #32, конвертер, ROWID #43
* Элемент конвертера содержит неверный номер файла #0
ПРЕДУПРЕЖДЕНИЕ
* Таблица #32, файл данных #1, страница #2
* Время записи страницы "07.02.2126 06:28:15" позже времени закрытия базы "15.04.2003 13:16:43"
ОШИБКА
* Таблица #32, файл данных #1, страница #2 Запись #1 (смещение 8), ROWID #1
* Элемент конвертера для ROWID #1 ссылается на другую страницу – (#16777215)
ОШИБКА
* Таблица #32, файл данных #1, страница #3 Запись #1 (смещение 8), ROWID #1
* Запись имеет недопустимую длину 0

Результат проверки базы
-----------------------
Обнаружены ошибки в 2 таблицах:
#28 "SYSTEM"."DISPATCH_ATTRS"
#32 "SYSTEM"."$$$AUDIT" 

Некоторые ошибки могут быть исправлены утилитой testdb.

Запустите testdb с ключом -r.

Для исправления предупреждений в битовых картах используйте ключи -r -ds.

Для стирания сильно поврежденных данных используйте ключи -r -dr.

После этого повторите процедуру тестирования БД.