×

ایجاد دیتابیس در SQL Server

فصل سوم :

ایجاد دیتابیس در SQL Server 2014

SSMS SQL Server Management Studio

محیطی را فراهم می آورد تا کاربر بتواند با موتور پایگاه داده ارتباط برقرار کند و فرآیند هایی نظیر تنظیمات ایجاد ، تغییر و مدیریت پایگاههای داده را انجام دهد .

Connect to Server

Server Name : نام سرور یا IP بک اسلش به همراه نام Instance در صورت وجود بصورت : IP/instance Name مثلا : 192.168.1.1/Hesabdari برای اتصال به اس کیو ال سرور نصب شده در ای پی آدرس 192.168.1.1 که نام instance آن Hesabdari می باشد .

Port : پیشفرضی که سروریس اس کی وال سرور با آن کار میکند پورت 1433 می باشد. که البته این پورت را می توان به پورت دیگری تغییر دارد که در این صورت در هنگام اتصال در قسمت Server Name پورت تعریف شده را با یک کاراکتر [,] کاما (Comma)قبل از آن به عبارت قبلی اضافه میکنیم مثلا: Server Name : 192.168.1.1,1450 برای اتصال به instance پیشفرض(Default Instance) که پورت آن بروی پورت 1450 تنظیم شده است

System Databases ( دیتابیس های سیستمی)

  • master Database : نگهداری اطلاعات سیستمی instance
  • msdb : مورد استفاده sql server agent
  • model : بعنوان تمپلت و الگو برای ایجاد دیتابیس ها ،
  • tempDB : نگهداری آبجکت های موقت و یا نتایج میانی یک پروسه

پایگاه داده یا Database

عبارتست از مجموعه ایی از اطلاعات ساخت یافته .بگونه ایی که یک نرم افزار بتواند بسرعت قسمتی از اطلاعات مورد نظر را بیابد . در واقع یک دیتابیس اس کیو ال همانند ظرفی است که گروهی از اشیاء مرتبط را در خود نگه میدارد. یک دیتابیس در اس کیو ال سرور علاوه بر ذخیره اطلاعات ساختار اطلاعات و ارتباطات ما بین آنها را نیز در خود نگه میدارد .

ایجاد دیتابیس :

Database Name : نام دیتابیس
Owner : مالک دیتابیس (default باشد)
Database Files : هر دیتابیس اس کیو ال برای ذخیره اطلاعات و تنظیمات خود حداقل احتیاج به 2 فایل دارد.
.mdf فایل اصلی ذخیره اطلاعات
ldf فایل نگهداری لاگ تراکنش ها یا همان Transaction Log
تمامی تراکنش ها و تغییرات ناشی از آنها در دیتابیس در transaction log ذخیره میشوند
Transaction log کلیدی ترین جزئ یک دیتابیس می باشد . اگر دیتابیس شما دچار مشکل شود با استفاده از همین transaction log می توان دیتابیس را به حالت قبلی بر گرداند .
Logical Name نام منطقی دیتابیس
FileType : که می تواند Rows Data برای نگهداری دیتابیس و یا log برای نگهداری لاگ باشد .

SQL Server FileGroup

از انجایی که موتور پایگاه داده استفاده فزاینده ایی از هارد دیسک کامپیوتر میکند برای بهبود عملکرد دیتابیس می توانیم اطلاعات دیتابیس و transaction log ها را در فایل هایی غیر از فایل های اصلی آنها قرار داده و این فایل ها را در هارد دیسک های متعدد کامپیوتر ذخیره کنیم. این فایل ها را فایل های ثانویه یا Secondary نامیده میشوند و با پسوند ndf نامگذاری می شوند .

برای مدیریت این فایل ها مفهومی بعنوان filegroup بوجود می آید که چیزی بجز دسته بندی منطقی فایلهای ndf نیست .می توان چند فایل ثانویه ndf را در یک گروه قرار داد. تا مدیریت آنها ساده تر شود. Filegroup اصلی Primary FileGroup نام دارد که فایل اصلی mdf دیتابیس ما نیز در آن گروه می باشد. حال اگر از کلید Add استفاده کنیم می توانیم فایل های ثانویه ایی را ایجاد کنیم که به یکی از filegroup های موجود اختصاص داده بشوند همچنین امکان ساخت FileGroup جدید نیز در همین مکان وجود دارد در درس های آینده فرا خواهید گرفت چگونه با استفاده از این تکنیک اطلاعات یک جدول بزرگ را در چندین هارد دیسک گوناگون ذخیره کنیم .

Initial Size

مشخص نمودن اندازه ابتدایی فایل به مگابایت که بطور پیش فرض این مقدار از دیتابیس Model که جزو دیتابیس های سیستمی اس کیو ال هست گرفته می شود .

Autogrowth

چگونگی افزایش حجم فایل های دیتابیس را با توجه به درج اطلاعات در دیتابیس را مشخص میکند. که آیا با درج اطلاعات جدید در دیتابیس آیا اندازه فایل های دیتابیس افزایش پیدا کند یا خیر و در صورت مثبت بوده این فزایش با چه نرخی انجام گیرد . و ماکزیمم این حجم تا چه مقدار زیاد شود.

Path
تعیین مسیر ذخیره فایل ها و در صورت عدم تغییر در مسیر های پیشفرض که در هنگام نصب انرا مشخص کرده ایم ساخته خواهند شد.

FileName
تعیین نام فایل ها بروی هارد دیسک و در صورت خالی رها شدن معادل یا نام منطقی انتخاب شده می باشند

ADD
افزودن فایل جدید به دیتابیس

Remove
حذف فایل انتخاب شده از دیتابیس .

Options

Collation :
تنظیم Collation دیتابیس (قواعد مقایسه رشته ها و مرتب سازی) Recovery Model :
: کنترل چگونگی مدیریت Transaction log ها

  • Simple :
    اس کیو ال سرور حداقل اطلاعات را در transaction log ثبت میکند.بنابراین حجم فایل لاگ کم است ولیکن انعطاف پذیری کمی برای رفع مشکلات دیتابیس و بازیابی بازیابی اطلاعات قبل از یک زمان خاص وجود . در دیتابیس های آموزشی در حین توسعه نرم افزار.
  • Full :
    : حد اکثر اطلاعات در transaction log ثبت میشود. بنابراین حجم فایل لاگ زیاد خواهد بود و لیکن ماکزیمم انعطاف پذیری را در بازگرداندن اطلاعات در صورت بروز مشکل خواهیم داشت در دیتابیس های عملیاتی
  • Bulk-logged :
    به روش مشابه full کار میکند ولیکن در هنگام درج حجم زیاد اطلاعات bulk data کاربرد دارد بروشی که حداقل اطلاعات با صرف زمان کمتری لاگ شوند . توصیه می شود از این روش برای مدت کوتاهی استفاده گردد و سپس ریکاوری مد به full باز گردانده شود.

Compatibility level

آخرین نسخه الس کیو ال سروری که دیتابیس آنرا پشتیبانی میکند مشخص میکند. یعنی اگر دیتابیس ما بروی سرور دیگری قرار گرفت نسخه ای کیو ال سرور ان ماکزیمم چه نسخه ایی می تواند باشد. اگر compatibility level دیتابیس را مثلا بروی sql server 2005 تنظیم کنیم نمی توانیم آنرا بروی سرور دیگری با نسخه اس کیو ال سرور 2008 یا 2012 منتقل نماییم .

Containment type

Containment دیتابیس در واقع دیتابیسی است که از سایر دیتابیس ها و instance اس کیو ال سروری که آنرا میزبانی میکند ایزوله است .در واقع اطلاعات و تنظیمات دیتابیس در خود ان ذخیره می شود نه در دیتا بیس سیستمی instance اس کیو ال سرور میزبان. بنابراین جابجایی آن آسانتر است .

FileGroups
مشاهده filegroup ها و امکان درج و حذف آنها


مفاهیم و موضوعات این فصل عبارتند از :

  • پایگاه داده یا Database

  • Database Files (فایل های دیتابیس)

  • FileGroup

  • ایجاد دیتابیس جدید

  • Recovery Model

  • Compatibility level

  • Containment type

vatantop
نظرات و سوالات درج سوال/ نظر