Що таке файл EDB?
Файл із розширенням .edb — це база даних поштових скриньок, створена Microsoft Exchange Server для зберігання даних, пов’язаних із поштою. EDB, база даних Exchange, зберігає повідомлення, які знаходяться в процесі обробки та не є SMTP. EDB також відомий як файли бази даних Extensible Storage Engine (ESE) і зберігають файли за допомогою структури b-дерева. Будучи файлами зберігання, файли EDB можна конвертувати в інші формати файлів зберігання пошти, наприклад PST і OST.
Формат файлу EDB
Немає офіційних/відкритих специфікацій формату файлів EDB, на які можна посилатися. Було досягнуто певного прогресу для зворотного проектування формату файлу, що призвело до часткового декодування специфікацій. Відповідно до них файл EDB складається з:
- Заголовок файлу - містить інформацію про заголовок файлу бази даних
- Сторінки фіксованого розміру - містять базу даних, яка складається з таблиць та індексів
Заголовок файлу бази даних
Заголовок файлу бази даних міститься на першій сторінці бази даних і має принаймні 668 байт. Заголовок файлу містить Версія формату файлу
і Тип файлу
на додаток до інших полів.
Типи файлів
Тип | Опис |
---|---|
0 | База даних |
1 | Потокове передавання |
Примітка.
Ідентифікатори для цих типів невідомі.
Версія формату файлу
Оригінальний формат EDB розпочався у квітні 1997 року та продовжував розвиватися для подальших змін.
Дата редакції | Версія | Редакція | опис |
---|---|---|---|
Квітень 1997 | 0x00000620 | 0x00000000 | Оригінальний бета-версія операційної системи. |
Травень 1997 | 0x00000620 | 0x00000001 | Додайте стовпці в каталозі для умовної індексації та OLD. |
Червень 1997 | 0x00000620 | 0x00000002 | Додати позначку fLocalizedText в IDB. |
Жовтень 1997 | 0x00000620 | 0x00000003 | Додати SPLIT_BUFFER до кореневих сторінок космічного дерева. |
Січень 1998 | 0x00000620 | 0x00000002 | Повернути версію, щоб ESE97 залишався сумісним із попередніми версіями. |
0x00000620 | 0x00000003 | Додати нові стовпці з тегами до каталогу (“CallbackData” і “CallbackDependencies”). | |
Травень 1998 | 0x00000620 | 0x00000004 | Підтримка наддовгого значення (SLV): signSLV, fSLVE існує в заголовку бази даних. |
Травень 1998 | 0x00000620 | 0x00000005 | Нове космічне дерево SLV. |
Жовтень 1998 | 0x00000620 | 0x00000006 | Космічна карта SLV. |
Грудень 1998 | 0x00000620 | 0x00000007 | 4-байт IDXSEG. |
Січень 1999 | 0x00000620 | 0x00000008 | Новий формат стовпця шаблону. |
Червень 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 містить схему для всіх таблиць у базі даних. Крім того, він також містить записи для всіх таблиць бази даних та індекси для таблиць. Його розташування визначається наступними ідентифікаторами.
- JetCreateDatabase
- JetCreateDatabase2
- JetAttachDatabase
- JetAttachDatabase2
Виходячи з них, стан бази даних можна оцінити наступним чином.
Значення | Ідентифікатор | Опис |
---|---|---|
1 | JET_dbstateJustCreated | Базу даних щойно створено. |
2 | JET_dbstateDirtyShutdown | База даних потребує жорсткого або програмного відновлення, щоб стати придатною для використання або переміщення. Не слід намагатися перемістити бази даних у такому стані. |
3 | JET_dbstateCleanShutdown | База даних знаходиться в чистому стані. Базу даних можна прикріпити без файлів журналу. |
4 | JET_dbstateBeingConverted | База даних оновлюється. |
5 | JET_dbstateForceDetachInternal | Це значення введено в WindowsXP |