Как восстановить разрушенные данные БД ADS — различия между версиями

Материал из Фабиус wiki
Перейти к: навигация, поиск
м
м
 
(не показано 17 промежуточных версий этого же участника)
Строка 1: Строка 1:
Руководство по использованию утилиты AdtFix для восстановления поврежденных adt-таблиц.
+
Руководство по использованию утилиты
 
+
'''AdtFix'''
'''Когда нужен ремонт?'''
+
для восстановления поврежденных adt-таблиц
 
+
= Когда нужен ремонт? =
 
Ремонт таблицы adt-типа следует произвести, если при работе с ней вы получаете сообщения Ads со следующими кодами ошибок:
 
Ремонт таблицы adt-типа следует произвести, если при работе с ней вы получаете сообщения Ads со следующими кодами ошибок:
  
Строка 21: Строка 21:
 
В таких случаях следует проверить подозрительные файлы, как это сказано ниже.
 
В таких случаях следует проверить подозрительные файлы, как это сказано ниже.
  
'''Инструмент'''
+
= Инструмент =
  
 
Для полного ремонта нужны следующие утилиты:
 
Для полного ремонта нужны следующие утилиты:
Строка 31: Строка 31:
 
Утилиты adtfix.exe и freeadt.exe размещены на нашем  [[FTP-сервер]]е
 
Утилиты adtfix.exe и freeadt.exe размещены на нашем  [[FTP-сервер]]е
  
'''Ремонт'''
+
= Ремонт =
  
 
*Создайте временную директорию типа \temp\fix.
 
*Создайте временную директорию типа \temp\fix.
Строка 37: Строка 37:
 
*Запустите adtfix.
 
*Запустите adtfix.
 
[[Файл:AdtFix1.png]]
 
[[Файл:AdtFix1.png]]
*Нажмите Next. По кнопке Browse укажите директорию \temp\fix
+
 
 +
 
 +
Advantage Database Table '''Repair Utility'''
 +
 
 +
Это приложение проверит файлы ADT на валидность ( от латинского validus - здоровый ) в указанной папке. Если файлы повреждены, вы сможете исправить ( fix ) их. Для того, чтобы предотвратить разрушение файлов ADT, поставьте мощный UPS, т.е. бесперебойный источник питания, на сервер. После нажатия на кнопку FIX, приложение предложит вам сохранить испорченные файлы, перед тем, как лечить их.
 +
 
 +
Это приложение проверяет следующие ошибки:
 +
 
 +
* неверный размер файла
 +
 
 +
* неверное количество записей
 +
 
 +
* поиск записей, которые не были освобождены от транзакций
 +
 
 +
* разрушение мемо ( т.е. ADM ) файлов
 +
 
 +
* неверные переходы с записи на запись и некорректные автоинкрементные значения
 +
 
 +
<div style = "color: red">
 +
'''ВНИМАНИЕ: лечение может привести к частичной потере данных'''
 +
</div>
 +
 
 +
 
 +
Нажмите '''Next'''. По кнопке Browse укажите директорию \temp\fix
 +
 
 
[[Файл:AdtFix2.png]]
 
[[Файл:AdtFix2.png]]
 
*Начните проверку, нажав Next.
 
*Начните проверку, нажав Next.
Строка 52: Строка 76:
 
[[Файл:AdtFix7.png]]
 
[[Файл:AdtFix7.png]]
  
'''Удаление мусора'''
+
= Удаление мусора =
  
 
*Перед тем как удалить мусор необходимо "отвязать" таблицы от Словаря базы данных утилитой freeadt.exe, которая ранее была записана вами в директорию \temp\fix. Перейдите в директорию \temp\fix и выполните freeadt. На приглашение командной строки наберите Y, Enter.
 
*Перед тем как удалить мусор необходимо "отвязать" таблицы от Словаря базы данных утилитой freeadt.exe, которая ранее была записана вами в директорию \temp\fix. Перейдите в директорию \temp\fix и выполните freeadt. На приглашение командной строки наберите Y, Enter.
Строка 64: Строка 88:
 
*Разрешайте чистку
 
*Разрешайте чистку
 
*Копируйте вылеченные и вычищенные таблицы на их рабочее место в "Фабиус"
 
*Копируйте вылеченные и вычищенные таблицы на их рабочее место в "Фабиус"
*'''<span style="color:#ff0000">Внимание!</span>''' Обязательно удалите в "Фабиус" одноименные с заменяемыми файлы .ADI. Например, вы восстановили таблицу DOCS0109 и заменяете в директории \Fabius\Opdata файлы DOCS0109.ADT и DOCS0109.ADM. Сразу же после замены файлов, или перед ней, удалите файл DOCS0109.ADI. И так для каждой заменяемой таблицы.
+
*'''<span style="color:#ff0000">Внимание!</span>''' Обязательно удалите в "Фабиус" одноименные с заменяемыми файлы .ADI. Например, вы восстановили таблицу DOCS0109 и заменяете в директории \Fabius\Opdata файлы DOCS0109.ADT и DOCS0109.ADM. Сразу же после замены файлов, или перед ней, удалите файл DOCS0109.ADI. И так для каждой заменяемой таблицы
 +
= Смотрите также =
 +
[[Часто задаваемые вопросы]]
  
[[Администрирование|Назад]]
+
[[Администрирование]]

Текущая версия на 10:00, 3 сентября 2018

Руководство по использованию утилиты

AdtFix

для восстановления поврежденных adt-таблиц

Когда нужен ремонт?

Ремонт таблицы adt-типа следует произвести, если при работе с ней вы получаете сообщения Ads со следующими кодами ошибок:

  • 7016 - Таблица разрушена
  • 7072 - Разрушен мемо-файл, связанный с этой таблицей
  • 7116 - Неопознана версия adt-таблицы
  • 7123 - Неопознан тип поля
  • 7124 - Неверное число записей

Эти ошибки возникают, когда вы пытаетесь работать с данными :

  • восстановленными из архива, который был создан без использования клиентской части Ads - например, вы свернули базу в архив с помощью Winrar, или сняли ее копию утилитой xcopy в то время, как с ней работали пользователи;
  • после резкой перезагрузки сервера - сбой питания, нажатие кнопки Reset и т.п.

Для пользователей испорченность таблицы проявляется в том, что они не могут добавить новую запись - F6 не работает там, где всегда работал.

В таких случаях следует проверить подозрительные файлы, как это сказано ниже.

Инструмент

Для полного ремонта нужны следующие утилиты:

  • adtfix.exe - ремонтирует таблицы
  • freeadt.exe - отвязывает таблицы от Словаря базы данных,
  • arc32.exe - многофункциональная утилита "Advantage Database Architect".

Утилиты adtfix.exe и freeadt.exe размещены на нашем FTP-сервере

Ремонт

  • Создайте временную директорию типа \temp\fix.
  • Копируйте в нее adtfix.exe, freeadt.exe и распакованные архивные или испорченные файлы.
  • Запустите adtfix.

AdtFix1.png


Advantage Database Table Repair Utility

Это приложение проверит файлы ADT на валидность ( от латинского validus - здоровый ) в указанной папке. Если файлы повреждены, вы сможете исправить ( fix ) их. Для того, чтобы предотвратить разрушение файлов ADT, поставьте мощный UPS, т.е. бесперебойный источник питания, на сервер. После нажатия на кнопку FIX, приложение предложит вам сохранить испорченные файлы, перед тем, как лечить их.

Это приложение проверяет следующие ошибки:

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

ВНИМАНИЕ: лечение может привести к частичной потере данных


Нажмите Next. По кнопке Browse укажите директорию \temp\fix

AdtFix2.png

  • Начните проверку, нажав Next.

AdtFix3.png

  • Все файлы будут последовательно проверены. Перед именами правильных файлов появится слово VALID. Файлы с нарушенной внутренней структурой будут выделены. В этом примере это файлы DOCS0109.ADT, DOCZ0109.ADT.
  • Что бы вылечить файлы нажмите FIX

AdtFix4.png

  • При лечении содержимое исправляемых файлов будет изменено, поэтому для каждого из файлов -.ADT и .ADM, входящих в одноименную таблицу, будет предложено сделать его bak-копию.

AdtFix5.png

  • Укажите директорию размещения bak-копий. По умолчанию будет предложена директория запуска утилиты. Отвечайте Сохранить.
  • Перед исправленными файлами появляется слово FIXED.

AdtFix6.png

  • Перед тем, как завершить работу, утилита сообщает, что исправленые файлы могут содержать, коротко говоря, мусор и рекомендует произвести их чистку операцией Pack утилиты Advantage Data Architect. См ниже

AdtFix7.png

Удаление мусора

  • Перед тем как удалить мусор необходимо "отвязать" таблицы от Словаря базы данных утилитой freeadt.exe, которая ранее была записана вами в директорию \temp\fix. Перейдите в директорию \temp\fix и выполните freeadt. На приглашение командной строки наберите Y, Enter.

FreeAdt1.png FreeAdt2.png

  • Черный экран пропадет вместе сообщениями о том, что все таблицы директории отвязаны от Словаря.
  • Для каждого вылеченного файла ассоциативно запускайте утилиту Advantage Database Architect, нажимая Enter на выбранном файле .ADT. В открывшемся окне выполняйте пункт меню Pack.

FreeAdt3.png

  • Разрешайте чистку
  • Копируйте вылеченные и вычищенные таблицы на их рабочее место в "Фабиус"
  • Внимание! Обязательно удалите в "Фабиус" одноименные с заменяемыми файлы .ADI. Например, вы восстановили таблицу DOCS0109 и заменяете в директории \Fabius\Opdata файлы DOCS0109.ADT и DOCS0109.ADM. Сразу же после замены файлов, или перед ней, удалите файл DOCS0109.ADI. И так для каждой заменяемой таблицы

Смотрите также

Часто задаваемые вопросы

Администрирование