it-swarm.asia

لماذا يعد ملف .bak أصغر بكثير من قاعدة البيانات التي يحتوي على نسخة احتياطية منها؟

لقد أخذت للتو نسخة احتياطية من قاعدة بيانات SQL Server. يبلغ مجموع ملفات MDF وملفات LDF معًا حوالي 29 غيغابايت ، ولكن حجم ملف .bak كان 23 غيغابايت فقط ، أصغر بنسبة 20٪ تقريبًا.

تخميني الأول عندما يكون إصدار واحد من مجموعة بيانات أصغر من إصدار آخر يحتوي على نفس البيانات سيكون ضغط البيانات ، ولكن الضغط ينتج عادة نسبة ضغط أفضل بكثير من 20٪ ، خاصة بالنسبة للبيانات عالية الترتيب (مثل جداول قاعدة البيانات. ) أيضًا ، لا يمكن بسهولة ضغط البيانات المضغوطة بشكل أكبر ، لكنني أعلم أنه يمكن ضغط ملفات .bak.

لذلك إذا لم يتم ضغط البيانات ، ولم يتم تجاهل أي شيء ، (لأن الهدف الأساسي من إنشاء نسخة احتياطية هو أن تكون قادرًا على استعادتها إلى حالة متطابقة بعد ذلك) ، فما هي نسبة 20٪ التي لم يتم حسابها؟

11
Mason Wheeler

تم تخصيص المساحة لملفات قاعدة البيانات ، ولكن لم يتم استخدامها.

يمكنك إنشاء قاعدة بيانات جديدة ، وجعلها بحجم 10 غيغابايت ، والاطلاع على الملفات التي تخصص هذه المساحة على القرص. ومع ذلك ، حتى تقوم بوضع البيانات في قاعدة البيانات ، يكون الملف فارغًا بشكل أساسي ، وسيكون حجم ملف النسخ الاحتياطي ضئيلًا.

HTH

16
SQLRockstar

للحصول على نسخة احتياطية كاملة ، يمكن تجاهل LDF عادة

MDF يحتوي على البيانات الفعلية

يحتوي ملف Bak فقط على صفحات البيانات المستخدمة داخل ملف mdf. لن يتم استخدام بعض المساحة. هذه المساحة هي مستخدم علوي لإعادة بناء الفهرس على سبيل المثال.

إنه نموذجي تمامًا أن يكون لديك نسخة احتياطية بحجم 100 جيجا بايت لقاعدة بيانات قد تحتوي على 250 جيجا بايت يمول. إذا كان حجم ملف mdf الخاص بي هو نفس حجم النسخ الاحتياطي ، فسيكون علامة حمراء حول تقلص DB غير متوقع أو نقص مساحة القرص وما إلى ذلك

10
gbn

عند إنشاء قاعدة بيانات ، يمكنك تحديد (للأداء) مقدار المساحة التي تريد تخصيصها للبيانات وملفات السجل. ثم يتم حجز هذه المساحة حتى لو لم يتم تخزين البيانات في الجداول. يتم نسخ النسخ الاحتياطية فقط للنطاقات التي تحتوي على بيانات مكتوبة إليها.

في حالتك ، يمكن أن يكون إجمالي MDF/LDF 100 غيغابايت ولكن سيظل النسخ الاحتياطي الخاص بك حوالي 23 غيغابايت للنسخ الاحتياطي الذي قمت به. إذا تمت إضافة حوالي 1 غيغابايت من البيانات ، فسيظل إجمالي MDF/LDF 100 غيغابايت ، ولكن سيكون الآن النسخ الاحتياطي حوالي 24 غيغابايت.

تحتوي النسخة الاحتياطية الكاملة على جميع النطاقات التي تحتوي على بيانات فيها وقليلاً من ملف السجل. يحتوي النسخ الاحتياطي الكامل على جميع البيانات من وقت انتهاء مهمة النسخ الاحتياطي ، وليس فقط من وقت بدء مهمة النسخ الاحتياطي ؛ هذا هو السبب مطلوب قليلا من ملف السجل.

4
StanleyJohns