در دیتابیس، هر فایلی را می توان کاهش حجم داد تا فضای غیر قابل استفاده آزاد شود. گاهی یک فایلی که خیلی حجم زیادی ندارد فضای زیادی را اشغال کرده که در اینجا شرینک فایل ممکن است لازم باشد.در این مقاله شما را با Shrink دیتابیس به صورت دستی و اتوماتیک بیشتر آشنا خواهیم کرد.
shrink:
لغت shrink به معنی کوچک کردن و یا منقبض کردن است. Shrink فضاهای اضافی دیتابیس را حذف کرده و باعث افزایش حجم دیتابیس میشود.داخل دیتابیس، هر فایلی را می توان کاهش حجم داد تا فضای غیر قابل استفاده آزاد شود. این فایل می تواند DateFile و یا LogFile باشد. اگرچه موتورهای پایگاه داده به استفاده مجدد از فضاها اقدام خواهند کرد اما گاهی یک فایلی که خیلی حجم زیادی ندارد فضای زیادی را اشغال کرده که در اینجا شرینک فایل ممکن است لازم باشد.
دیتا و فایل های لاگ می تواند کاهش حجم داده شوند. حجم فایل های دیتابیس گروهی و یا جداگانه می تواند به صورت دستی کاهش یابد و یا اینکه دیتابیس می تواند به صورت اتوماتیک در بازه های زمانی مشخص نسبت به حذف فضاهای خالی اقدام کند.
Shrink فایل ها همیشه از انتها شروع می شود. برای مثال اگر فایل ما ۵ گیگ باشد و با شیرینک کردن حجم آن ۴ گیگ شود، موتورهای دیتابیس فضای یک گیگ را از انتها آزاد خواهند کرد. اگر صفحه در بخشی قرار گرفته باشد موتور دیتابیس اولین فضای خالی را به آن اختصاص خواهند داد.
شرینک دیتابیس به صورت اتوماتیک
اگر گزینه AUTO_SHRINK برای دیتابیس فعال باشد، موتور دیتابیس به صورت اتوماتیک دیتابیس ها را شرینک خواهد کرد. این گزینه با استفاده از دستور ALTER DATABASE تنظیم می شود و به صورت پیش فرض غیر فعال است. موتور دیتابیس به صورت دوره ای فضاهای استفاده شده در هر دیتابیس را بررسی می کند و با فعال بودن این گزینه اقدام به کاهش سایز خواهد کرد. این کار در پس زمینه انجام خواهد شد و هیچ یک از یوزرهای دیتابیس را تحت تاثیر قرار نخواهد داد.
شرینک دیتابیس به صورت دستی
شرینک دیتابیس و یا فایل های داخل آن می تواند به صورت دستی و با استفاده از دستور DBCC SHRINKDATABASE و یا DBCC SHRINKFILE انجام شود. اگر با این دستورات همه فضاهای داخل فایل لاگ اصلاح نشود یک پیام اطلاعاتی که مشخص می کند که چگونه باید فضای بیشتری آزاد شود ارسال می شود تا شما آن را اجرا کنید.
منبع : microsoft.com
با سلام
تاثیر شیرینک دیتابیس بر روی سرعت اجرای کوئریها چگونه است؟
در مدیریت بهتر حافظه موثر است و طبیعتا اثر مثبت در سرعت دارد