جهش به محتوا
ورود کاربران
سرور مجازی و اختصاصی

مقاله از شرینک دیتابیس و فعال کردن auto shrink

هر زمان نیاز به کمک داشتید، در کنار شما هستیم . با ما تماس بگیرید ( 031-3626 0000 ) یا درخواست خود را به صورت آنلاین ثبت نمایید.

شرینک دیتابیس و فعال کردن auto shrink

واژه shrink که در فارسی شرینک خوانده می‌شود معنای لغوی “کوچک شدن” یا ” منقبض شدن” می‌دهد. شرینک دیتابیس به معنای کاهش حجم دیتابیس است. این مورد با آزاد کردن فضاهای خالی فایل اتفاق می‌افتد و فضای دیسکی که فایل‌های داده‌ها و Log دیتابیس اشغال کرده‌اند را کاهش می‌دهد. شرینک دیتابیس به دو صورت دستی و اتوماتیک انجام می‌شود که با فعال کردن auto shrink سایز دیتابیس بصورت اتوماتیک کاهش داده می‌شود. در این مقاله

شرینک دیتابیس با آزاد کردن فضای خالی در فایل اتفاق می‌افتد. ذخیره فایل‌ها در ویندوز به صورت صفحه بندی است. شرینک فضاهای خالی و اشغال نشده بین داده‌ها را حذف می‌کند و داده‌ها را از صفحات آخر به فضاهای خالی نزدیک‌تر از صفحات اول منتقل می‌کند و نهایتاً صفحات آخر را حذف می‌نماید. به صورت خلاصه shrink آخرین فضای پر را به اولین فضای خالی منتقل می کند.

شرینک دیتابیس در sql server به دو صورت دستی و اتوماتیک انجام می‌شود.

برای shrink دیتابیس بصورت دستی و کاهش حجم فضای اشغالی دیتابیس، با استفاده از نرم افزار Microsoft SQL Server Management Studio به دیتابیس متصل شوید.

shrink database with Microsoft Sql erver Management Studio

 

مانند تصویر ابتدا در سمت چپ بالا روی آیکن کامپیوتر که به دیتابیس متصل است کلیک نمایید. این آیکن برای connect به دیتابیس یا برقراری اتصال به دیتابیس است.

در پنجره‌ای که باز می‌شود، فیلد Server Type را روی حالت Database Engine بگذارید.

Server name نام سروری است که دیتابیس روی آن قرار دارد.

در مارال هاست نام دیتابیس معمولاً با یک IP معتبر همراه شماره پورت سرویس sql server است.

نکته: اگر کنترل پنل پلسک دارید از بخش database می‌توانید نام دیتابیس را بررسی نمایید.

 

shrink دیتابیس

 

فیلد Authentication را روی SQL Server Authentication قرار دهید

در بخش Login هم نام یوزری که دسترسی کامل به دیتابیس دارد، وارد نمایید. به عبارتی این یوزر db_owner است.

Password نیز پسورد یوزر دیتابیس است.

شرینک دیتابیس به صورت دستی

برای شرینک دیتابیس بصورت دستی بعد از اتصال مانند تصویر زیر روی نام دیتابیس کلیک راست نمایید و از گزینه Tasks روی shrink و سپس گزینه‌ی Database را انتخاب نمایید.

شرینک دیتابیس

 

در پنجره‌ای که باز می‌شود در مقابل Database نام دیتابیس را نوشته است.

Currently allocated space نیز میزان فضایی که در حال حاضر به دیتابیس اختصاص داده شده است را به مگابایت نشان می‌دهد.

و Available free space نیز میزان فضایی که بعد از شرینک آزاد می‌شود، مشخص می‌کند. این عدد به مگابایت است و در پرانتز نیز به درصد نسبت به حجم کلی دیتابیس نوشته می‌شود.

نکته: عدد مقابل Available free space دقیق نیست و معمولاً خطا دارد.

شرینک دیتابیس به صورت اتوماتیک

با فعال کردن ویژگی auto shrink سرویس SQL server به صورت دوره‌ای شرینک دیتابیس انجام می‌شود و نیازی به انجام shrink دیتابیس به صورت دستی نیست.

برای فعال کردن auto shrink مطابق با توضیحات بالا با یوزر db_owner و نرم افزار Microsoft SQL Server Manaement Studio به دیتابیس متصل شوید.

روی نام دیتابیس کلیک راست نمایید روی properties که آخرین گزینه است را انتخاب نمایید.

 

فعال کردن auto shrink دیتابیس

 

پنجره Database Properties باز خواهد شد.

از قسمت select a page در ستون سمت چپ کناری options را انتخاب نمایید. در این صفحه تنظیمات دیتابیس وجود دارد که شما بنابر نیازتان می‌توانید آنها را فعال یا غیر فعال نمایید.

در جدول پایین صفحه از گروه Automatic گزینه Auto Shrink را پیدا کنید. این گزینه به صورت پیشفرض غیرفعال است. (روی حالت False قرار دارد)

در ستون مقابل روی علامت فلش کوچک به سمت پایین کلیک نمایید تا گزینه‌ها باز شود. با انتخاب حالت True شرینک اتوماتیک دیتابیس فعال می‌شود. در نهایت نیز روی OK کلیک کنید و از این پس موتور SQL Server بصورت دوره ای (مثلاً هر چند ساعت یکبار) دیتابیس را شرینک می‌کند.

 

فعال کردن auto shrink دیتابیس

 

نکته: به صورت کلی Shrink دیتابیس index داده‌ها را تغییر می‌دهد که بعلت جابجایی اطلاعات در صفحات فایل می‌باشد. بنابراین ممکن است داده‌ی صفحه x+1 قبل از صفحه x قرار بگیرد که باعث می‌شود یک Page به صفحه‌ی قبل از خودش اشاره کند. این مورد باعث افزایش بعضی از وظایف موتور SQL Server مانند Fragmentation می‌شود همچنین مدت زمان اجرای وظایفی مانند database locking را افزایش می‌دهد. به همین علت auto shrink بصورت پیشفرض غی فعال می‌شود و توضیه می‌شود فعال نشود.

نکته: با توجه به نکته‌ی قبلی اگر Available free space نسب به حجم کلی دیتابیس کم است و باعث آزاد شدن فضای زیادی نمی‌شود نیازی به shrink دیتابیس نیست.

 

نکته: ممکن است شرکت هاستینگ دسترسی هاست را برای شرینک دیتابیس و auto shrink را بسته باشد، در صورتی که هاست شما نزد مارال هاست است یک تیکت ارسال نمایید.

این مقاله برای شما مفید بود؟
بلهخیر