PDA

View Full Version : فایل Log که همراه فایل Data هست برای چه منظور است و چه کاربردی دارد؟



m0rteza
چهارشنبه 07 مرداد 1388, 19:58 عصر
فایل Log که همراه فایل Data هست برای چه منظور است و چه کاربردی دارد؟

meysam_pro
چهارشنبه 07 مرداد 1388, 20:47 عصر
زمانیکه یک تغییر در دیتابیس انجام میشه، این تغییرات به صورت فایل درهم و ترتیبی در یک فایل با پسوند LDF که همون لاگ فایله ذخیره میشه. پس از هر بار Shrink کردن این فایل خالی میشه.(توصیه میشه که AutoShirink بکنین، در Properties مربوطه دیتابیس).
فایل اصلی دیتابیس با پسوند MDF به صورت فایل مرتب ذخیره میشه و هر بار شیفت یا اصلاح مقدار و ... هزینه ی زیادی به سیستم تحمیل میکنه. به همین خاطر این کار ها اول رو لاگ فایل انجام میشه و بعد اگه AutoShirink فعال باشه زمانیکه بار سرور کمه به صورت اتوماتیک ادغام میشن و فایل LDF خالی میشه یا خودتون دستی این کار رو میکنید.
واسه جزییات بیشتر به تئوری های دیتابیسی(RollBack کردن تغییر، حفظ consistency با لیست های Undo و Redo که از تراکنشهای کامل و نیمه تمام پر میشن و............).

m0rteza
پنج شنبه 08 مرداد 1388, 01:37 صبح
واسه جزییات بیشتر به تئوری های دیتابیسی(RollBack کردن تغییر، حفظ consistency با لیست های Undo و Redo که از تراکنشهای کامل و نیمه تمام پر میشن و............).

میشه بگید منظور از تئوری های دیتابیسی چی هست؟ و اونها رو نام ببرید .
می خوام برای هر تئوری که فرمودید یک تاپیک بزنم
در ضمن من از شما خیلی ممنونم . خیلی لطف دارید

meysam_pro
پنج شنبه 08 مرداد 1388, 14:36 عصر
میشه بگید منظور از تئوری های دیتابیسی چی هست؟
معماری و در کل مبانی نظری دیتابیس منظورمه(مانند خواص ACID و مدیریت تراکنشها، مدیر دیتابیس، مدیر تراکنش، روالهای نرمال سازی، سطوح مختلف نرمالی و....)
برخلاف زمینه های دیگر علوم کامپیوتر، تئوری های مرتبط با دیتابیس سالها قبل کامل شدن(به نوعی Stable) و امروزه فقط تئوری های مطرح شده ، پیاده سازی میشن(یادمه SQL Server امکاناتی رو ورژن 2005 گذاشته بود و خیلی منم منم میکرد که اوراکل گفت چند ساله اینو ما تو سیستم هامون پیش بینی کردیم!).
تئوری های دیتابیسی هم تو کتاب جناب رانکوهی، سیلبرشاتس و ... زیاد روش مانور داده شده، بهتره کتابها رو بخونید(اگه تو دانشگاه نخوندید) چون هیچ کاربردی ندارن، فقط دونستنشون مزیته.
یادم رفت بگم(البته اشاره کردم)، فایل Log بیشترین ارزش رو در زمان ترمیم(Recovery) دیتابیس پیدا میکنه. مفهومی به اسم Check Pointها داریم که به صورت متناوب در بازه های زمانی مختلف اتفاق میافتن. در هر Check Point دو اتفاق می افته :1.نوشتن محتویات رم به هارد 2.ثبت رکوردی به اسم رکورد بررسی به فایل LOG که حاوی لیستی از تراکنشهای در حال اجرا است. بعد این کار لیست های Undo و Redo رو پر میکنه و... بعد بر اساس خواص ACID تراکنشها رو Rollback یا Commit میکنه.

در ضمن من از شما خیلی ممنونم . خیلی لطف دارید
خواهش میکنم، فقط داریم تبادل اطلاعات میکنیم.