الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كيفية انشاء ملفين MDF لقاعدة بيانات واحدة

بدأه yahia_fci في 6 يونيو 2014 · 5 رد · 1,533 مشاهدة · في قواعد بيانات Microsoft SQL Server
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته

بقالى فترة ببحث عن ازاى انشأ قاعدة بيانات واحدة مع انشاء ملفين MDF ,   لهذه القاعدة  ووضعهم فى اماكن مختلفين ع السيرفر

حفاظا على قاعدة البيانات لا قدر الله

 لو حصل لأى قاعدة تلف تكون القاعدة التانية موجودة معايا

مع البحث اتضح ان مكنتش فاهم اساسيات كتيراوى عند انشاء كنت

بكتب

CREATE DATABASE [Company]

كنت اذهب للبرتشن C وابحث داخل مسار كبير حتى احصل على اسم قاعدة البيانات

واجدها

Company.mdf

واخر

Company_log.ldf

ما هذين الملفين واين توجد قاعدة البيانات ؟!!

MDF اختصار Primary Data File

وهذا يحتوى على قاعدة البيانات والجداول وكيفية انشائها بمعنى هذه قاعدة البيانات

التى   يصحبها الملف الأخر صاحب extinsion

LDF اختصار Log Data File

وهذا المسئول عن   تسجيل أى احداث تحدث على قاعدة البيانات من ادخال وحذف وتعديل

 

وانتهى الأمر

 

لكن : -

 

 

 وجدت الأمر اكبر بكثير من هذا الكود البسيط

عند فتح برنامج السيكول سيرفر يوجد اربع قواعد بيانات  داخل ملف System DataBase لم يخطر ببالى ما هم وايه الفائدة منهم !!

الاربع قواعد هم

1-Master

2-Model

3-MSDB

4-TempDB

 

أولا:

1-Master

دى مسئولة عن انشاء قاعدة البيانات وصلاحيات كل قاعدة للبيانات بمعنى

المسئولة عن عدم اختلاط القواعد ببعضها ومنع اختلاط الجداول بكل قاعدة من القواعد المُنشة عندى

(صلاحيات قاعدة البيانات)

 

ثانيا :

2-Model

دى عبارة عن templete لقعدة البيانات بمعنى هى قاعدة بيانات بشكل معين وحجم معين واين توجد هذه القاعدة ع الجهاز عندى

مثلا لو ضغطنا كليك يمين على اى قاعدة بيانات موجودة داخل السيكول سيرفر واخترنا properties 

هنلاقى ع اليمين select Page  نختار File

فى اسم columan اسمه initial Size و autogrowth , و path

 وكل حاجة تحتها مساحة

كل الحاجات دى افتراضية فى موجودة داخل Model  وعند انشاء قاعدة البيانات الجديدة

هذه القاعدة تأخد كل هذه الخصائص الافتراضية مثلا

وهذا يعنى ان انت ممكن تحدد MDF وLDF ومسار قاعدة البيانات PathFileو وحجم قاعدة البيانات

تحكم كامل فى قاعدة البيانات نشوف المثال دا

CREATE DATABASE [Company]
  ON  PRIMARY 
( NAME = 'Company_primary',
 FILENAME = 'D:\Company_primary.mdf' , 
 SIZE = 1000 mb ,
 MAXSIZE = 20000 mb,
 FILEGROWTH = 10 mb )  
 
 LOG ON 
( NAME =  'Company_log',
 FILENAME =  'E:\Company.ldf' , 
 SIZE = 1000 ,
  MAXSIZE = 2048GB ,
   FILEGROWTH = 10 mb)

اول حاجة

CREATE DATABASE [Company]

دا اسم قاعدة البيانات

ON  PRIMARY

دى قاعدة البيانات الاساسية 

( NAME = 'Company_primary'

دى اسم قاعدة البيانات

FILENAME = 'D:\Company_primary.mdf' ,

دا مسار قاعدة البيانات ال عندى ال عايز اخزنها عندى ع الجهاز

SIZE = 1000 mb

حجم قاعدة البيانات  المبدئى المُراد انشائها بقوله مبدئيا احجزلى 1000 mb

 MAXSIZE = 20000 mb,

الحجم النهائى لقاعدة البيانات

 FILEGROWTH = 10 mb )

دى بقى لما اقوله الحجم البدئى ال انا حجزه يتملىء ,  بقوله احجزلى كمان 10mb  وهكذا يحجز 10mb حتى امتلاء المساحة المحدد تخزين البيانات بها

LOG ON

دى الخاصة  بملف ال log المسئول عن تسجيل ما يحدث داخل قاعدة البيانات

من الممكن تصغير حجمه لأنه يسجل اى شىء ومع الوقت يحجز مساحة كبيرة

فى غنا عنها

 

 

ثالثا :

3-MSDB

Microsoft DataBase

دى المسئولة عن الاتصال بين ال server و windows 

بمعنى اى عمليات مثلا  backupو Restore لل DB ... المسئولة عن اتمام مثل هذه العمليات هى MSDB

 

 

رابعا :

4-TempDB

دى مثل قاعدة البيانات المؤقتة بيتحمل عليها كل العمليات ال بتحدث فى الوقت الحالى شبيها بــRAM

بتسجل كل الاحداث الحالية ع server لدى ال DB

تم تعديل هذه المشاركة بواسطة yahia_fci في 6 يونيو 2014 في 23:21

ادخال ارقام فقط فى TextBox


http://consoledotread.blogspot.com/2014/03/allow-textbox-accept-only-number-c.html


--


مثال بسيط للبحث داخل الداتا بيز واسترجاع النتائج داخل textboxs


https://consoledotread.blogspot.com/b/post-preview?token=QAU8sEUBAAA.SS_bsuZGwEBtU1HK3qRljA.HsnvAY7IlWKbUW9D0jvLQg&postId=2256449426535795254&type=POST


 


--


 


سبحان الله وبحمده***سبحان الله العظيم


#2

أخي الفاضل

كل مل كتبته وبحث عنه شيء ممتاز جدا لكن لا يمكن انشاء أكثر من ملف MDF للقاعدة الواحدة بغرض الحفظ علي البيانات ولكي تحافظ علي البيانات يجب عليك أخذ نسخة احتياطية من قاعدة البيانات بشكل دوري أو يومي أو كما يترائي لك Backup

certifiedj.jpg

 

 

Image Hosted by ImageShack.us
#3

اولا اسف ع الخطأ

ثانيا :

انا بقالى كتير ببحث عن الموضوع دا لكن برده

طلع فى حارة سد زى ما بيقوله

بس عادى طريقة بحثى مش كانت سليمة لكن استفدت كتير اوى

على الرغم البحث مكنش موفق

لكن سنستمر النقاش

 CREATE DATABASE Company 
  ON  PRIMARY 
( NAME = 'Company_primary',
 FILENAME = 'D:\Company_primary.mdf' , 
 SIZE = 1000 mb ,
 MAXSIZE = UNLIMITED,
 FILEGROWTH = 10 mb ) ,
 (name ='Company2' ,
  Filename ='E:\Company2_primary.ndf')
 
 LOG ON 
( NAME =  'Company_log',
 FILENAME =  'E:\Company.ldf' , 
 SIZE = 1000 ,
  MAXSIZE = 2048GB ,
   FILEGROWTH = 10 mb) 
,
(name ='Company2_log' ,
  Filename ='E:\Company2_log.ldf')

هنا فى هذا الكود ينشأ قاعدتين

فى مسارين مختلفين ؟ 

اعتقدت انهم قاعدتين اى اضافة فى احدهم تحدث فى الثانية لكن

الفرق بينهم ايه ؟

مع الملاحظة عند عمل attach  لل company2  يظهر ال error  microsoft sql server error 5171

 

ال بالبحث عليه قالى لا تستطيع اضافة الا primary databse

 طب ما هى  هذه قاعدة البيانات ؟

منتظر الرد.

....

واسف ع الخطأ مرة اخرى

تم تعديل هذه المشاركة بواسطة yahia_fci في 7 يونيو 2014 في 22:46

ادخال ارقام فقط فى TextBox


http://consoledotread.blogspot.com/2014/03/allow-textbox-accept-only-number-c.html


--


مثال بسيط للبحث داخل الداتا بيز واسترجاع النتائج داخل textboxs


https://consoledotread.blogspot.com/b/post-preview?token=QAU8sEUBAAA.SS_bsuZGwEBtU1HK3qRljA.HsnvAY7IlWKbUW9D0jvLQg&postId=2256449426535795254&type=POST


 


--


 


سبحان الله وبحمده***سبحان الله العظيم


#4

أخي الفاضل

كما قلت لك سابقا لا يمكن عمل ملفين MDF لقاعدة بيانات واحدة وبالتالي كل قاعدة بيانات تقوم بانشائها يقوم برنامج SQL Sevrer بانشاء ملف MDF واحد و ملف LDF واحد فقط لاغير

ولانشاء قاعدة بيانات جديدة اضغط كليك يمين علي Databases ثم اختر New Database عن طريق SQL Server Management Studio وكما تشاهد بالصورة أسهل وأفضل لك

 

post-46243-0-68192400-1402117065.jpg

certifiedj.jpg

 

 

Image Hosted by ImageShack.us
#5

السلام عليكم

انا فاهم خلاص استوعبت ان مش ينفع ملفين MDF لقاعدة بيانات واحدة :)

انا دلوقتى عايز افهم ايه هما القاعدين ال انشأو وايه الفرق ما بينهم فى الكود دا

 CREATE DATABASE Company 
  ON  PRIMARY 
( NAME = 'Company_primary',
 FILENAME = 'D:\Company_primary.mdf' , 
 SIZE = 1000 mb ,
 MAXSIZE = UNLIMITED,
 FILEGROWTH = 10 mb ) ,
 (name ='Company2' ,
  Filename ='E:\Company2_primary.ndf')
 
 LOG ON 
( NAME =  'Company_log',
 FILENAME =  'E:\Company.ldf' , 
 SIZE = 1000 ,
  MAXSIZE = 2048GB ,
   FILEGROWTH = 10 mb) 
,
(name ='Company2_log' ,
  Filename ='E:\Company2_log.ldf')

فى قاعدتين انشأو فى مسارين مختلفين القاعدة الاولى Company

لما اجى اعمل ليها attach  لا يوجد مشكلة

لكن القاعدة الثانية يظهر الاروو error  microsoft sql server error 5171

ال بالبحث عليه قالى لا تستطيع اضافة الا primary databse

 

محتاج افهم القاعدة التانية دى ايه ؟

 

وشكرا :)

تم تعديل هذه المشاركة بواسطة yahia_fci في 7 يونيو 2014 في 22:46

ادخال ارقام فقط فى TextBox


http://consoledotread.blogspot.com/2014/03/allow-textbox-accept-only-number-c.html


--


مثال بسيط للبحث داخل الداتا بيز واسترجاع النتائج داخل textboxs


https://consoledotread.blogspot.com/b/post-preview?token=QAU8sEUBAAA.SS_bsuZGwEBtU1HK3qRljA.HsnvAY7IlWKbUW9D0jvLQg&postId=2256449426535795254&type=POST


 


--


 


سبحان الله وبحمده***سبحان الله العظيم


مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…