Rambler's Top100

(c)2009-2017 openinfotech.ru

СУБД HyTech

Документация
Программа HTCTLG

Программа HTCTLG

Назначение

Программа в автономном режиме проверяет целостность системных таблиц, восстанавливает системные таблицы сервера HyTech. Кроме этого программа HTCTLG может изменять каталог размещения таблиц с данными и каталог размещения хранимых процедур и триггеров. Программа HTCTLG реализована в виде консольного приложения и работает под управлением ОС Windows NT(версии 4.0) или ОС Windows-95

Описание соответствует программа HTCTLG.EXE версии 1.0.0.4.

Состав

В состав программы HTCTLG входит загрузочный модуль HTCTLG.EXE и ряд динамических библиотек. Для устойчивой работы программы требуется система Windows NT версии 4.0 с установленным ServicePack -4 или выше или система Windows 95 OSR2 или выше.

Настройка параметров

Формат командной строки

Все параметры программа HTCTLG берет из файла инициализации.

Формат командной строки для запуска программы HTCTLG

HTCTLG.EXE

При таком запуске программа стартует в интерактивном режиме, выводя подсказку

HTCTLG>

В ответ можно ввести следующие команды

quit

Завершить работу с программой

exit

Завершить работу с программой

help

Вывести список доступных команд

help ###

Вывести формат команды ###

version

Вывести версию программы

verify

Проверить системные таблицы

setbasepath ###

Прописать у всех таблиц каталог ###

setprocpath ###

Прописать у всех хранимых процедур и триггеров каталог ###

open

Открыть, а при необходимости, создать системные таблицы

pack

Упаковать все системные таблицы

repair

Восстановить постоянные части испорченных системных таблиц

repairlog

Восстановить переменные части испорченных системных таблиц

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

HTCTLG.EXE <xxx

где xxx - имя файла с командами, которые надо выполнить.

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

echo open>r.rpl
echo verify>r.rpl
echo pack>>r.rpl
echo quit>>r.rpl
htctlg <r.rpl

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

@echo Now started HTCTLG...
@echo verify>r.rpl
@echo pack>>r.rpl
@htctlg27 <r.rpl >a.err
@if errorlevel 1 goto :err
@echo.
@echo Success!
@goto exit
:err
@type a.err
@echo repair>r.rpl
@echo open>>r.rpl
@htctlg27 <r.rpl
@echo verify>r.rpl
@htctlg27 <r.rpl >a.err
@if errorlevel 1 goto :err1
@echo.
@echo Repair Success!
@goto exit
:err1
@type a.err
@echo.
@echo Error!
:exit 

 

Формат файла инициализации

Программа HTCTLG использует конфигурационный файл с именем HTCTLG.ini, находящийся в том же каталоге, что и запускаемая программа. Конфигурационный файл является специальным текстовым файлом, содержащим пары <имя_ключа=значение>, которые используются программой во время загрузки. Пары имя_ключа=значение объединены в разделы. Каждый раздел имеет имя, которое помещается в начало раздела и заключается в квадратные скобки

При работе программа использует раздел [HTCTLG]

Ключ

Тип значения

Назначение

Значение по умолчанию

LogFile

Строка

Имя файла для протокола. Если параметр опущен, то протокол не пишется.

Отсутствует

ReadOnly

0/1

Режим работы с системным каталогом. 0 - если режим "только чтение", 1 - режим "Чтения-записи"

0 - Только чтение

Кроме того, необходимо заполнить разделы для динамической библиотеки HSCTLG.DLL

Лучше расположить программу HTCTLG.EXE в одном каталоге с SQL сервером и скопировать соответствующие разделы из файла инициализации сервера в файл инициализации программы HTCTLG.

Протоколирование

В протокол работы записываются следующие данные

  • Время запуска программы и ее версия
  • Выполняемые операции и коды ошибок
  • Время завершения программы и код завершения

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

Протоколирование производится, если в файле инициализации в разделе [HTCTLG] указан параметр LogFile

Коды завершения программы

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

0

Успех

3

Ошибка инициализации программы

4

Были ошибки при выполнении операции

5

Ошибка инициализации системного каталога