Резервно копие на база данни (.bak)

Microsoft Стандарт

BAK е често използвано разширение за архивни файлове, а не универсален формат. Някои .bak файлове са архиви на SQL Server, а други са копия, специфични за дадено приложение; съдържанието им зависи от софтуера, който ги е създал.

Конвертиране от BAK към SQL

Безплатен конвертор от BAK към SQL в браузъра. Конвертирайте файлове незабавно на вашето устройство.

Проверка и метаданни

Операционните системи и файловите анализатори идентифицират BAK файлове чрез проверка на началната двоична байтова последователност:

Изберете или пуснете файлове тук

Поверително - файловете никога не напускат устройството ви

или поставете Ctrl+V
Гаранция за поверителност с нулево мрежово предаване: 0 байта са качени на външни сървъри. Цялата обработка се извършва локално в пясъчниците на вашия браузър.

Байтов подпис на заглавката (сигнатурни байтове)

Операционните системи и файловите анализатори идентифицират BAK файлове чрез проверка на началната двоична байтова последователност:

HEX ПОДПИС (ОФСЕТ 0):

42 41 43 4B 55 50 / TAPE

ASCII ПРЕДСТАВЯНЕ: BACKUP

Стандартизация: Microsoft SQL Server Backup Specification / Generic Backup

Технически спецификации

Контейнерна архитектураMicrosoft Tape Format (MTF) или собственическо съхранение на страници в база данни, съдържащо журнали на транзакциите, файлове с данни и метаданни
КомпресияНативна компресия на резервните копия на SQL Server, прозрачна компресия на страници или без компресия
Поредност на байтовете (Endianness)Ред от младшия към старшия байт (Little-Endian, Microsoft SQL Server).
Цветови пространстваНе се прилага (архив на база данни)
Канали и структураСхеми на бази данни, редове в таблици, индекси, съхранени процедури и контролни точки на журналите на транзакциите
Максимални размериНа практика без ограничение (поддържа резервни копия на корпоративни бази данни с размер няколко терабайта)
ПрозрачностНяма
Поточно предаване и прогресивно зарежданеПоследователно поточно предаване на медийни блокове (съвместимо с лентови носители и облачно блоб хранилище)

Техническа сравнителна матрица: BAK спрямо конкуренти

Технически атрибутBAK (Текущ)SQLVHDISO
СъдържаниеПълна двоична моментна снимка на базата данниТекстов SQL скрипт на INSERT заявкиОбраз на диска на виртуална машинаОбраз на файлова система на оптичен диск
Скорост на възстановяванеВисокоскоростно директно копиране на двоични странициБавно (повторно изпълнение на SQL инструкции)Стартиращ виртуален дискМонтиране сектор по сектор
Файлов форматПроприетарен формат за ленти на MicrosoftТекстов ANSI/ISO SQL скриптКонтейнер за виртуален диск на MicrosoftДисков образ ISO 9660 / UDF
Съвместимост с механизма на базата данниСамо за Microsoft SQL ServerПоддръжката зависи от програмата.Hyper-V / VirtualBox / VMwareПоддръжката зависи от програмата.

Често срещани видове повреди и ръководство за възстановяване на шестнадесетични данни

Грешка в SQL Server: 'RESTORE DATABASE приключва аварийно: неуспешна проверка на контролната сума на страница'.

Първопричина: Повреден сектор за съхранение, причиняващ грешка в контролната сума на вътрешна страница на базата данни.

Възстановяване: Опитайте възстановяване с 'CONTINUE_AFTER_ERROR' или поправете, като използвате инструмента за архивиране на File2File.app.

Анализ на сигурността и вектори на атака към парсера

Файловете за резервни копия на бази данни съдържат пълни бази данни на компании и трябва да бъдат криптирани със сертификати, за да се предотврати неоторизиран достъп.

Известни вектори на атака

  • Кражба на некриптиран BAK файл, даваща на нападателите пълен достъп до всички потребителски записи и пароли.
  • Препълване на буфера в помощните програми за анализ на заглавки на резервни копия.
  • Отказ от услуга чрез деформирани дескриптори на носители за архивиране.

Най-добри практики за защита: Когато се поддържа, включете криптиране на базата данни и резервните копия и пазете ключовете отделно.

Исторически произход и етапи

2016Microsoft SQL Server 2016 въвежда вградено прозрачно криптиране на резервни копия и хибриден облачен архив.
2008SQL Server 2008 въвежда вградено интегрирано компресиране на резервни копия вътре в .bak файловете.
1989Microsoft SQL Server 1.0 установява стандартната архитектура за резервни копия на бази данни във формат .bak.

Основни предимства

  • Пълно възстановяване на базата данни към определен момент във времето: възстановява цели бази данни, включително схеми, данни, потребители и разрешения.
  • Проверка на целостта с висока надеждност: включва вградени заглавки на носители, контролни суми на страници и откриване на скъсани страници.
  • Нативна поддръжка за диференциални резервни копия и вериги от дневници на транзакциите за минимизиране на прозорците за архивиране.

Технически ограничения и минуси

  • Заключване на версията на SQL Server: .bak файл, създаден с по-нова версия на SQL Server, не може да бъде възстановен на по-стара версия.
  • Огромен обем за съхранение на корпоративни бази данни без разрешена нативна компресия на резервните копия.
  • Не може да се отваря с обикновени текстови редактори или софтуер, който не е база данни, без конвертиране.

Интересни технически факти

  • Форматът .bak на Microsoft SQL Server исторически произлиза от Microsoft Tape Format (MTF), проектиран за поточно предаване към физически ролки с лента.
  • Много CAD, векторни и текстообработващи приложения автоматично създават .bak файл като аварийно резервно копие на предишно запазения файл.
  • Администраторите на бази данни често повтарят правилото: „Резервно копие не съществува, докато не сте го възстановили успешно".

Често задавани технически въпроси

Какво представлява .bak файлът?

Разширението .bak не обозначава един формат. Архивите на SQL Server са една от употребите; други приложения го използват за копия, чието съдържание зависи от създалия ги софтуер.

Как мога да възстановя .bak файл?

В SQL Server Management Studio (SSMS) щракнете с десния бутон върху „Databases“, изберете „Restore Database“, изберете „Device“ и посочете вашия .bak файл.

Мога ли да конвертирам BAK файл в SQL скриптове или CSV?

Да. File2File.app може да анализира .bak файлове на SQL Server и да извлече таблиците на базата данни директно в чисти SQL скриптове или CSV електронни таблици.