Unexpected I/O error while accessing backup file
(Непредвиденная ошибка ввода/вывода при обращении к файлу копии <���строка>)
|
Вероятно, возникла ошибка диска или другого оборудования при выполнении копирования или восстановления
|
Unknown switch (Неизвестный переключатель <���строка>)
|
Был задан нераспознанный утилитой gbak режим
|
User name parameter missing (Отсутствует параметр имя пользователя)
|
Копирование или восстановление обращается к удаленной машине. Задайте имя пользователя переключателем -user
|
Validation error on column in table
(Ошибка проверки столбца в таблице <���строка>)
|
База данных не может быть восстановлена, потому что содержит данные, которые нарушают ограничение целостности. Попытайтесь удалить ограничения из метаданных, указав при восстановлении -no_validity
|
Warning - record could not be restored
(Предупреждение - запись не может быть восстановлена)
|
Возможно разрушение указанных данных
|
Wrong length record, expected n encountered m . . .
(Неверная длина записи, ожидается n, встретилась m)
|
|
Пора дальше
Утилита gbak имеет большое значение для поддержания базы данных в работоспособном состоянии и для устранения некоторых типов разрушения данных. Другим инструментом, который вы можете использовать для выполнения задач администрирования, ведения и восстановления базы данных, является программа gfix, обсуждаемая дальше. Комбинированное использование gfix и gbak для анализа и иногда починки разрушенной базы данных описывается в приложении 4.
Как пользователь SYSDBA или владелец базы данных, вы можете использовать административный инструмент командной строки gfix для подключения к базе данных и выполнения разнообразных задач по поддержанию работоспособности и восстановлению базы данных.
Используя gfix, вы можете:
* выполнять чистку (sweep);
* изменять интервал автоматического sweep;
* инициировать закрытие базы данных для получения исключительного доступа и опять переводить базу данных в активное состояние;
* переключаться между синхронным и асинхронным выводом;
* переводить базу данных для чтения/записи в базу данных только для чтения и наоборот;
* изменять диалект;
* устанавливать размер кэша базы данных;
* отыскивать и подтверждать или отменять зависшие транзакции;
* чинить разрушенные базы данных и данные при некоторых условиях;
* активировать и удалять теневые копии базы данных.
Утилита 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 или владельца базы данных в каждой команде:
Читать дальше