1.3 SQL Server - ملفات .mdf و .ldf

ما هي ملفات .mdf و .ldf في SQL Server؟

عند إنشاء قاعدة بيانات في SQL Server، يتم إنشاء ملفين رئيسيين على القرص الصلب:


📦 أولًا: ملف .mdf (Primary Data File)

  • الامتداد: .mdf = Main Database File
  • الوصف: هو الملف الرئيسي الذي يحتوي على جميع بيانات الجداول، الفهارس، الإجراءات المخزنة، وأنواع البيانات.
  • لا يمكن الاستغناء عنه: بدونه لا يمكن تحميل قاعدة البيانات.

⬅ عند إنشاء قاعدة بيانات جديدة باسم MyDB، يتم إنشاء ملف MyDB.mdf.


📘 ثانيًا: ملف .ldf (Transaction Log File)

  • الامتداد: .ldf = Log Database File
  • الوصف: يُستخدم لتخزين كل العمليات التي تم تنفيذها على قاعدة البيانات (مثل INSERT, UPDATE, DELETE).
  • وظيفته: يُستخدم في حالات الاستعادة (Recovery) بعد تعطل أو فشل النظام.

⬅ يتم إنشاء ملف MyDB_log.ldf تلقائيًا عند إنشاء قاعدة البيانات MyDB.


🧰 كيف أحدد مكان حفظ ملفات .mdf و .ldf؟

عند إنشاء قاعدة بيانات باستخدام SSMS، يمكنك تحديد مكان حفظ الملفات عبر تبويب Files في نافذة New Database.

أو عبر كود T-SQL كما في المثال التالي:


CREATE DATABASE MyDB
ON (
  NAME = 'MyDB_Data',
  FILENAME = 'D:\SQLData\MyDB.mdf'
)
LOG ON (
  NAME = 'MyDB_Log',
  FILENAME = 'D:\SQLLogs\MyDB_log.ldf'
);

💡 ملاحظات مهمة:

  • يمكن إنشاء أكثر من ملف بيانات إضافي بامتداد .ndf لدعم الأداء والتوزيع.
  • لا يُنصح بنقل ملفات .mdf أو .ldf يدويًا أثناء تشغيل SQL Server.
  • يمكنك استخدام أمر sp_helpfile داخل قاعدة البيانات لمعرفة موقع الملفات:

USE MyDB;
EXEC sp_helpfile;

تعليقات

المشاركات الشائعة من هذه المدونة

C# - Arrays

Entity Framework - ما هو ORM؟ ونبذة عن Dapper وNHibernate

Entity Framework - مقدمة عن Entity Framework