السلام عليكم ورحمة الله وبركاته
معي سؤال وهو ما هي أهمية وجود ملفات امتدادها ndf عند إنشاء قاعدة بيانات في sql server
السلام عليكم ورحمة الله وبركاته
معي سؤال وهو ما هي أهمية وجود ملفات امتدادها ndf عند إنشاء قاعدة بيانات في sql server
السلام عليكم اخي الكريم
مش كل قواعد البيانات فيها NDF .... لانه مرتبط بعدد ال File group يعني لو قاعة باناتك تحتوي علي primary / default file group يهذا يعني انك لا تملك Ndf اما اذا انشأت انت ولاسباب تعرفها وتدركها تماما Secondary file group علي Hard disk معين او share ثم نقلت فيها بعض مكونات قاعدة بياناتك ففي هذه الحالة سيكون عندك Ndf
اخوك فى الله
Microsoft Certified DataBase Administrator MCDBA
اقتباساما اذا انشأت انت ولاسباب تعرفها وتدركها تماما Secondary file group علي Hard disk معين
بارك الله فيك أخي الفاضل أحمد
اضافة لما قالة الاخ أحمد وعلي سبيل المثال
علي افتراض أن يوجد لدينا قرص علي الهارد ديسك مساحتة 50 جيجا وحجم البيانات قارب علي الوصول الي هذا الحد فمن ضمن الاشياء التي يجب ان نضعها في الاعتبار محاولة نقل جزء من البيانات الي قرص آخر به مساحة كافية لاحتواء أزمة المساحات فتتم هذه العملية لمثل هذه الاجراءات وتنتج عنها ملف جديد بامتداد ndf


طيب ما انت كويس اهو :) والله وحشتنا كتير جدا مرفق ملف وورد جميل جدا
سلامي لمترو الانفاق
اخوك المتغرب
Microsoft Certified DataBase Administrator MCDBA
أشكركم جزيل الشكر على المعلومات القيمة التي عرفوتمني بها
وجزاكم الله ألف خير
من مقالة سابقة شاركت فى كتابتها سابقاً
***********************************************
من الافضل ان تقوم بتقسيم قاعدة البيانات إلى جزئين الاول خاص بال Data Base Schema و الاخر تحتوى على الملفات من خلال انشاء ملف MDF (Primary Data File ) يحتوى على ال Schema فقط و انشاء ملف NDF (Secondary Data File ) يحتوى على الداتا ساقوم بالتوضيح عبر الكود
Create database Arabteam2000 On Primary ( NAME = Arabteam_dat, FILENAME = 'c:\Arabteam2000.mdf', SIZE = 4,--Initial Size 4 MB MAXSIZE = 10,--Maximum Size 10 MB FILEGROWTH = 10 % ) Log On ( NAME = Arabteam_Log, FILENAME = 'c:\Arabteam2000.ldf', SIZE = 5,--Initial Size 5 MB MAXSIZE = 10, --Maximum Size 10 MB FILEGROWTH = 10 % )
هنا قمت بانشاء Primary Data file يحوى ال Schema فقط بدون بيانات و الان سنقوم بانشاء Secondary Data File ليحتوى على البيانات سنقوم اولاً بانشاء FileGroup و هى تجميع منطقى يحتوى على ملفات البيانات
--Create Second FileGroup Alter DataBase Arabteam2000 add filegroup [SecondFG]
و من ثم سنقوم باضافة ملفات البيانات لل FileGroup
--Add Files To File Group Alter DataBase Arabteam2000 Add file ( Name =Arabteam2000_Data2, FileName = 'D:\Arabteam2000_Data.ndf', Size=2, MaxSize=10, FileGrowth=1MB ) To FileGroup [SecondFG]
لاحظ اننى حددت ان هذا الملف سيكون لل File Group التى سبق و انشئتها .... يمكنك اضافة اكثر من ملف لل FileGroup التى ترغب فى كتابة البيانات عليها
الان سنأتى للخطوة الاخيرة الا و هى تحديد اى ال File Group التى ستعتبر ال Default File Group لكتابة البيانات عليها
--Make The Default FileGroup Alter DataBase Arabteam2000 Modify FileGroup [SecondFG] Default
الفائدة هنا هى تنظيم و تقليل ال IO لقراءة البيانات فتقسيم ملفات البيانات عبر ال File Group بالترتيب سيمكن ال SQL Server من الكتابة و القراءة على الملفات فى نفس الوقت بدلاً من قراءة او الكتابة على كل ملف على حدة مما يقلل من ال IO
فى حال لاحظت ستجد ان هذا الاسلوب مشابه لاسلوب عمل ال Raid5 مع الهاردات مما يعطى كفائة عند العمل مع ملفات البيانات ذات الاحجام الكبيرة و يسهل عليك صيانة ال Data Base Schema
فى نفس الوقت او نقلها للاستفادة بها فى مشروع اخر
تم تعديل هذه المشاركة بواسطة طارق إبراهيم في 18 أبريل 2010 في 12:29
Technical Lead Developer
اللهم قنى شر الجهل و الجهلاء
( اقْتَرَبَ لِلنَّاسِ حِسَابُهُمْ وَهُمْ فِي غَفْلَةٍ مَّعْرِضُونَ ) {الأنبياء:1}
السلام عليكم و رحمة الله و بركاته...
لدي جدول سيكون به ما يزيد عن 40000 سجل، لذا أنشئت secondary file group و جعلت مساحة الملف 5 ميجا ... السؤال هو كيف أربط الجدول بهذا الملف ؟ حيث أني ذهبت لخصائص الجدول و لم أجد سوى primary file group ... و السؤال الآخر عند عمل attach لقاعدة البيانات لا يظهر سوى ملف mdf و لا يظهر ملف ndf... كيف أضيف الملفان؟
up