.MDF вариант №
Файл с расширением .mdf — это основной файл базы данных, используемый Microsoft SQL Server для хранения пользовательских данных. Это имеет первостепенное значение, так как все данные хранятся в этом файле. Файл MDF хранит пользовательские данные в реляционных базах данных в виде столбцов, строк, полей, индексов, представлений и таблиц. SQL Server позволяет устанавливать параметры автоматического увеличения и автоматического сжатия, что положительно влияет на производительность базы данных. Файлы MDF можно загружать и присоединять к базе данных с помощью Microsoft SQL Server. Файлы MDF имеют тип mime Application/octet-stream.
Формат файла МДФ
Основной единицей хранения данных в SQL Server является страница. Страница хранения, назначенная БД, делится на логические страницы с номерами от 0 до n. Одна страница начинается с 96-байтового заголовка, который состоит из идентификатора страницы, типа структуры, к которой принадлежит страница, количества записей на странице и указателей на предыдущую и следующую страницы.
Структура файла
Файл MDF имеет следующую структуру данных.
- Страница 0: Заголовок
- Страница 1: Первый PFS
- Страница 2: Первая игра
- Страница 3: Первый SGAM
- Страница 4: Не используется
- Страница 5: Не используется
- Страница 6: Первый DCM
- Страница 7: Первый BCM
Заголовок файла
Страница номер 0 всех файлов содержит заголовок, в котором хранятся метаданные о файле.
Свободное пространство страницы (PFS)
PFS определяет состояние распределения и количество свободного места.
- Бит 1: Указывает, выделена страница или нет.
- Бит 2: указывает, находится ли страница в смешанном экстенте.
- Бит 3: указывает, что эта страница является страницей IAM.
- Бит 4: указывает, что эта страница содержит фантомные записи.
- Биты с 5 по 7: комбинированное трехбитовое значение, которое указывает на заполнение страницы следующим образом:
- 0: страница пуста
- 1: Страница заполнена на 1–50 %.
- 2: Страница заполнена на 51–80 %.
- 3: страница заполнена на 81–95 %.
- 4: Страница заполнена на 96–100 %.