.EDB вариант №
Файл с расширением .edb представляет собой базу данных почтовых ящиков, созданную Microsoft Exchange Server для хранения данных, связанных с почтой. EDB, база данных Exchange, хранит сообщения, которые находятся в процессе обработки и не являются SMTP. EDB также известны как файлы базы данных Extensible Storage Engine (ESE) и хранят файлы с использованием структуры b-tree. Будучи файлами хранения, файлы EDB могут быть преобразованы в другие форматы файлов хранения почты, такие как PST и OST.
Формат файла EDB
Не существует официальных/открытых спецификаций формата файла EDB, на которые можно было бы ссылаться. Был достигнут некоторый прогресс в обратном проектировании формата файла, что привело к частичному декодированию спецификаций. В соответствии с ними файл EDB состоит из:
- Заголовок файла — содержит информацию о заголовке файла базы данных.
- Страницы фиксированного размера — содержит базу данных, состоящую из таблиц и индексов.
Заголовок файла базы данных
Заголовок файла базы данных находится на первой странице базы данных и имеет размер не менее 668 байт. Заголовок файла содержит «Версия формата файла» и «Тип файла» в дополнение к другим полям.
Типы файлов
Тип | Описание |
---|---|
0 | База данных |
1 | Потоковое |
Примечание:
Идентификаторы для этих типов неизвестны.
Версия формата файла
Первоначальный формат EDB был запущен в апреле 1997 года и с тех пор продолжал развиваться для внесения изменений.
Дата редакции | Версия | Редакция | описание |
---|---|---|---|
Апрель 1997 г. | 0x00000620 | 0x00000000 | Оригинальная бета-версия операционной системы |
Май 1997 г. | 0x00000620 | 0x00000001 | Добавить столбцы в каталог для условной индексации и СТАРОЙ. |
Jun 1997 | 0x00000620 | 0x00000002 | Добавить флаг fLocalizedText в IDB. |
Октябрь 1997 | 0x00000620 | 0x00000003 | Добавить SPLIT_BUFFER к корневым страницам пространственного дерева. |
январь 1998 г. | 0x00000620 | 0x00000002 | Отменить версию, чтобы ESE97 оставался совместимым с предыдущими версиями. |
0x00000620 | 0x00000003 | Добавить в каталог новые столбцы с тегами (“CallbackData” и “CallbackDependencies”). | |
Май 1998 г. | 0x00000620 | 0x00000004 | Поддержка сверхдлинных значений (SLV): signSLV, fSLVExists в dbheader. |
Май 1998 | 0x00000620 | 0x00000005 | Новое космическое дерево SLV. |
Октябрь 1998 | 0x00000620 | 0x00000006 | Карта космоса SLV. |
декабрь 1998 | 0x00000620 | 0x00000007 | 4-байтовый IDXSEG. |
Январь 1999 г. | 0x00000620 | 0x00000008 | Новый формат столбца шаблона. |
Jun 1999 | 0x00000620 | 0x00000009 | Отсортированные столбцы шаблона. Используется в Windows XP SP3 |
0x00000620 | 0x0000000b | Содержит заголовок страницы с контрольной суммой ECC. Используется в Exchange | |
0x00000620 | 0x0000000c | Используется в Windows Vista (SP0) | |
0x00000620 | 0x00000011 | Поддержка страниц размером 2 КиБ, 16 КиБ и 32 КиБ. Расширенный заголовок страницы с дополнительными контрольными суммами ECC. Сжатие столбцов. Подсказки по пробелам. Используется в Windows 7 (SP0) | |
Май 1999 | 0x00000623 | 0x00000000 | Новый диспетчер пространства. |
Файлы базы данных
Файл базы данных EDB содержит схему для всех таблиц в базе данных. Кроме того, он также включает записи для всех таблиц базы данных и индексы для таблиц. Его местоположение определяется следующими идентификаторами.
- Джеткреатедатабасе
- Джеткреатедатабасе2
- JetAttachDatabase
- Джетатачдатабасе2
Исходя из этого, состояние базы данных можно оценить следующим образом.
Значение | Идентификатор | Описание |
---|---|---|
1 | JET_dbstateJustCreated | База данных только что создана. |
2 | JET_dbstateDirtyShutdown | Для того чтобы базу данных можно было использовать или перемещать, необходимо выполнить аппаратное или мягкое восстановление. Не следует пытаться перемещать базы данных в этом состоянии. |
3 | JET_dbstateCleanShutdown | База данных находится в чистом состоянии. База данных может быть подключена без каких-либо файлов журнала. |
4 | JET_dbstateBeingConverted | Выполняется обновление базы данных. |
5 | JET_dbstateForceDetachInternal | Это значение введено в WindowsXP |