پشتیبان پایگاه داده (.bak)
Microsoft استانداردفایل پشتیبان پایگاه داده و سیستم (BAK) پسوند جهانی فایل برای نسخههای پشتیبان پایگاه داده و سیستم است که به ویژه نمایانگر نسخههای پشتیبان کامل پایگاه داده مایکروسافت اسکیوال سرور شامل جداول، طرحوارهها و لاگهای تراکنش است.
تبدیل BAK به SQL
مبدل رایگان BAK به SQL درون مرورگر. فایلها را فورا روی دستگاه خود تبدیل کنید.
بررسی و فراداده
سیستمعاملها و تحلیلگرهای فایل، فایلهای BAK را با بررسی توالی بایتهای دودویی ابتدایی شناسایی میکنند:
امضای هدر در سطح بایت (Magic Bytes)
سیستمعاملها و تحلیلگرهای فایل، فایلهای BAK را با بررسی توالی بایتهای دودویی ابتدایی شناسایی میکنند:
امضای HEX (آفست 0):
42 41 43 4B 55 50 / TAPEنمایش ASCII: BACKUP
استانداردسازی: Microsoft SQL Server Backup Specification / Generic Backup
مشخصات فنی
| معماری کانتینر | Microsoft Tape Format (MTF) or proprietary database page storage containing transaction logs, data files, and metadata |
| فشردهسازی | SQL Server native backup compression, transparent page compression, or uncompressed |
| ترتیب بایتها (Endianness) | Little-Endian (Microsoft SQL Server) |
| فضاهای رنگی | N/A (Database Archive) |
| کانالها و ساختار | Database schemas, table rows, indexes, stored procedures, and transaction log checkpoints |
| حداکثر ابعاد | Practically unlimited (supports multi-terabyte enterprise database backups) |
| شفافیت مشخصات | None |
| استریمینگ و پیشرونده | Sequential media block streaming (compatible with tape and cloud blob storage) |
ماتریس مقایسه فنی: BAK در برابر رقبا
| ویژگی فنی | BAK (فعلی) | SQL | VHD | ISO |
|---|---|---|---|---|
| محتویات | تصویر باینری کامل پایگاه داده | اسکریپت متنی SQL از دستورات INSERT | تصویر دیسک ماشین مجازی | تصویر سیستمعامل دیسک نوری |
| سرعت بازیابی | کپی صفحه باینری مستقیم با سرعت بالا | کند (اجرای مجدد دستورات SQL) | دیسک مجازی قابل بوت | مونتاژ بخش به بخش |
| فرمت فایل | فرمت نوار مایکروسافت اختصاصی | اسکریپت متنی ANSI/ISO SQL | ظرف دیسک مجازی مایکروسافت | تصویر دیسک ISO 9660 / UDF |
| سازگاری موتور | انحصاری مایکروسافت SQL Server | عمومی در تمام پایگاههای داده | Hyper-V / VirtualBox / VMware | سیستمعاملهای عمومی |
حالتهای رایج خرابی و راهنمای بازیابی هگز
خطای SQL Server: «دستور RESTORE DATABASE غیرطبیعی متوقف شد: مجموعچک صفحه ناموفق بود».
علت ریشهای: خرابی بخش ذخیرهسازی که باعث شکست مجموعچک (Checksum) در یک صفحه داخلی پایگاه داده شده است.
بازیابی: تلاش برای بازیابی با دستور 'CONTINUE_AFTER_ERROR' یا تعمیر با استفاده از ابزار Backup در File2File.
تحلیل امنیتی و بردارهای حمله تجزیهکننده (Parser)
فایلهای پشتیبان پایگاه داده حاوی اطلاعات کامل شرکت هستند و باید با گواهینامهها رمزگذاری شوند تا از دسترسی غیرمجاز جلوگیری شود.
بردارهای حمله شناختهشده
- سرقت فایل BAK رمزگذاری نشده که دسترسی کامل مهاجمان به تمام سوابق و کلمات عبور مشتریان را فراهم میکند.
- سرریز بافر در ابزارهای تجزیه هدر پشتیبان پایگاه داده.
- حمله عدم سرویسدهی از طریق توصیفگرهای رسانه پشتیبان ناقص یا دستکاریشده.
بهترین روشهای پدافندی:
تاریخچه و نقاط عطف
مزایا و نقاط قوت کلیدی
- بازیابی کامل پایگاه داده در یک نقطه زمانی مشخص: کل پایگاه داده از جمله طرحوارهها، دادهها، کاربران و دسترسیها را بازیابی میکند.
- تأیید یکپارچگی بالا: شامل هدرهای رسانهای جاسازیشده، مجموعچکهای صفحات (Checksums) و تشخیص صفحات آسیبدیده است.
- پشتیبانی بومی از نسخههای پشتیبان تفاضلی و زنجیرههای لاگ تراکنش برای به حداقل رساندن پنجرههای پشتیبانگیری.
محدودیتها و معایب فنی
- قفل نسخه SQL Server: یک فایل .bak ایجاد شده در نسخه جدیدتر SQL Server را نمیتوان در نسخه قدیمیتر بازیابی کرد.
- فضای ذخیرهسازی بسیار زیاد برای پایگاههای داده سازمانی در صورت عدم فعالسازی فشردهسازی بومی نسخه پشتیبان.
- بدون تبدیل، نمیتوان آن را با ویرایشگرهای متنی عمومی یا نرمافزارهای غیرپایگاهدادهای باز کرد.
نکات فنی جالب
- فرمت .bak در مایکروسافت SQL Server به طور تاریخی از فرمت نوار مایکروسافت (MTF) سرچشمه گرفته است که برای استریم روی رولهای نوار فیزیکی طراحی شده بود.
- بسیاری از برنامههای طراحی مهندسی (CAD)، برداری و ویرایش متن به طور خودکار یک فایل .bak به عنوان نسخه پشتیبان اضطراری از فایل ذخیرهشده قبلی ایجاد میکنند.
- مدیران پایگاه داده به شوخی این قانون را تکرار میکنند: «یک نسخه پشتیبان وجود ندارد تا زمانی که با موفقیت آن را بازیابی کنید».
سوالات فنی متداول
فایل .bak چیست؟
یک فایل .bak معمولاً یک نسخه پشتیبان کامل از پایگاه داده Microsoft SQL Server است که شامل تمام جداول، دادهها و تنظیمات لازم برای بازیابی پایگاه داده میباشد.
چگونه میتوانم یک فایل .bak را بازیابی (Restore) کنم؟
در SQL Server Management Studio (SSMS)، روی 'Databases' راستکلیک کرده، گزینه 'Restore Database' را انتخاب کنید، 'Device' را برگزینید و فایل .bak خود را انتخاب نمایید.
آیا میتوانم یک فایل BAK را به اسکریپتهای SQL یا CSV تبدیل کنم؟
بله. File2File.app میتواند فایلهای .bak پایگاه داده SQL Server را تجزیه کرده و جداول پایگاه داده را مستقیماً به اسکریپتهای تمیز SQL یا صفحات گسترده CSV استخراج نماید.
جفتهای تبدیل مرتبط با BAK
تبدیل یک پشتیبان باینری پایگاه داده به اسکریپت متنی ساده SQL به شما امکان میدهد جداول و دادههای پایگاه داده را بین موتورهای کاملاً مختلف پایگاه داده جابجا کنید.
تبدیل یک اسکریپت متنی ساده SQL فشرده نشده به یک فایل پشتیبان پایگاه داده بومی بهینهسازی شده، اندازه ذخیرهسازی را کاهش داده و زمانهای بازیابی سرور را تسریع میکند.