گزارش لاگ ها بخشی جدایی ناپذیر از پایگاه داده SQL Server هستند. فایل MS SQL Transaction Log یک رکورد مداوم از تمام تغییرات ایجاد شده در پایگاه داده است. هر پایگاه داده حداقل یک فایل لاگ دارد که منحصر به آن پایگاه داده است. اما گاهی اوقات این فایل به طور غیرمنتظره ای بزرگ می شود و حاوی فضای بی استفاده اضافی است که هیچ فایده ای ندارد. در چنین شرایطی باید با انجام چند مرحله دستی، فایل MS SQL Transaction Log را کوچک کنیم.
روش کوچک کردن فایل لاگ MS SQL
SQL Server Management Studio را باز کنید و به نمونه پایگاه داده SQL Server متصل شوید.
اکنون روی پایگاه داده ای که می خواهید کوچک شود کلیک راست کرده و Tasks >Shrink > Files را انتخاب کنید.
نوع فایل، گروه فایل و نام فایل را انتخاب کنید
حالا شما سه گزینه کوچک کردن عمل دارید
-
گزینه Release unused space فضای استفاده نشده در فایل را برای سیستم عامل آزاد می کند. این گزینه حجم فایل را بدون جابجایی داده کاهش می دهد.
-
گزینه سازماندهی مجدد فایل ها قبل از انتشار فضای استفاده نشده به شما امکان می دهد درصد فضای خالی را که پس از کوچک شدن در پایگاه داده باقی می ماند را وارد کنید. در این گزینه باید فایل Shrink را به مقدار مشخص کنید و مقادیر شناسایی شده از 0 تا 99 باشد.
-
فایل خالی با انتقال داده ها به فایل های دیگر در همان گزینه filegroup داده های فایل مشخص شده را به فایل های filegorup دیگر منتقل می کند. سپس می توانید فایل خالی را از filegorup نیز حذف کنید
و سپس بر روی دکمه OK کلیک کنید
اندازه فایل MS SQL Transaction Log را بررسی کنید
به نمونه SQL مناسب در SQL Server Management Studio متصل شوید. روی دیتابیس کلیک راست کرده و Properties را انتخاب کنید.
فایل ها را در ستون انتخاب صفحه انتخاب کنید و مسیر فایل را یادداشت کنید
بررسی کنید آیا فایل لاگ بزرگتر از فایل داده آنها وجود دارد. اگر فایل لاگ 20% یا بیشتر بزرگتر باشد، باید فایل را کوچک کنید
شما باید این فرآیند را برای هر پایگاه داده تکرار کنید.
روش دیگر با استفاده از کوئری
پس از اتصال ریموت به دیتابیس مورد نظر از طریق نرم افزار SQL Server Management Studio بر روی دیتابیس کلیک راست کرده و گزینه New Query را انتخاب نمایید.
سپس جهت مشاهده حجم فایل لاگ می بایست کوئری زیر را اجرا نمایید. (به جای hostnegar_db از نام دیتابیس موردنظر خود استفاده نمایید)
USE [hostnegar_db]
GO
SP_HELPFILE
پس از اجرای کوئری و مشاهده نتیجه، نام فایل لاگ را کپی نمایید. حال می بایست اقدام به shrink کردن دیتابیس نمایید. کوئری زیر را اجرا نمایید.
نکته: جای hostnegar_db از نام دیتابیس موردنظر خود و به جای hostnegar_db_log نام فایل لاگ را قرار دهید.
"ALTER DATABASE "hostnegar_db
;SET RECOVERY SIMPLE
GO
;DBCC SHRINKFILE ('hostnegar_db_log', 1)
صبر کنید تا کوئری اجرا شده و پیام زیر را نمایش دهد.
این مقاله نحوه shrink فایل MS SQL Transaction Log را با استفاده از SQL Server Management Studio توضیح می دهد. هنگامی که پایگاه داده آنلاین است و حداقل یک فایل لاگ مجازی رایگان دارد، کوچک شدن فایل گزارش ممکن است دچار مشکل شود. بسیار مهم است که این فایل ها را قبل از اینکه تمام فضای موجود را مصرف کنند، کوچک کنید.
در این آموزش نحوه Shrink کردن دیتابیس MS SQL را توضیح دادیم. امیدواریم این مقاله آموزشی برای شما مفید بوده باشد، برای دیدن باقی آموزش ها میتوانید وارد منوی پشتیبانی بخش آموزش ها شوید، در صورتی که درباره این آموزش به مشکل یا سوالی برخورد کردید، میتوانید آن را در بخش دیدگاه بیان کنید.