ГЛАВА 39. Утилита gfix.

ГЛАВА 39. Утилита gfix.

Как пользователь SYSDBA или владелец базы данных, вы можете использовать административный инструмент командной строки gfix для подключения к базе данных и выполнения разнообразных задач по поддержанию работоспособности и восстановлению базы данных.

Используя gfix, вы можете:

* выполнять чистку (sweep);

* изменять интервал автоматического sweep;

* инициировать закрытие базы данных для получения исключительного доступа и опять переводить базу данных в активное состояние;

* переключаться между синхронным и асинхронным выводом;

* переводить базу данных для чтения/записи в базу данных только для чтения и наоборот;

* изменять диалект;

* устанавливать размер кэша базы данных;

* отыскивать и подтверждать или отменять зависшие транзакции;

* чинить разрушенные базы данных и данные при некоторых условиях;

* активировать и удалять теневые копии базы данных.

Использование gfix

Утилита gfix может быть запущена только из командной строки. Для использования этой утилиты вы должны быть владельцем базы данных или пользователем SYSDBA. Для запуска gfix откройте окно командной строки и перейдите в каталог /bin в корневом каталоге Firebird.

Синтаксис команды gfix:

gfix [режимы] база-данных

База-данных должна быть полным именем первичного файла базы данных, с которой вы собираетесь работать.

Первичный файл однофайловой базы данных является собственно файлом базы данных. Для многофайловых баз данных первичный файл является первым файлом в наборе.

Режимы являются допустимой комбинацией переключателей и, в некоторых случаях, аргументов. Они представлены позже в табл. 39.1. Для большинства переключателей могут быть использованы сокращения. Необязательные символы показаны в квадратных скобках ([ ]).

! ! !

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

. ! .

Получение доступа к базе данных из gfix

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

-pas[sword] <пароль> -u[ser] <имя>

Следующий пример команды gfix устанавливает синхронный режим (Forced Writes).

POSIX:

bin]$ ./gfix -w sync customer.fdb -pas heureuse -user SYSDBA

Windows:

bin> gfix -w sync customer.fdb -pas heureuse -user SYSDBA

Пользователь и пароль при локальном соединении

Перед стартом сервера для расширенной локальной работы с копией проблемной базы данных или для восстановления транзакции вы можете добавить две системные переменные ISC_USER и ISC PASSWORD для исключения необходимости набора имени и пароля пользователя SYSDBA или владельца базы данных в каждой команде:

shell prompt> SET ISC_USER=SYSDBA

shell prompt> SET ISC_PASSWORD=heureuse

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