اندازه پرونده ورود به سیستم معامله را مدیریت کنید

ساخت وبلاگ

این موضوع نحوه نظارت بر اندازه ورود به سیستم SQL Server را شامل می شود ، ورود به سیستم معامله را کوچک می کند ، یک پرونده ورود به سیستم معامله را اضافه یا بزرگ می کند ، نرخ رشد ورود به سیستم معاملات TEMPDB را بهینه می کند و رشد یک پرونده ورود به سیستم را کنترل می کند.

نظارت بر فضای ورود به سیستم

استفاده از فضای ورود به سیستم با استفاده از sys. dm_db_log_space_usage. این DMV اطلاعات مربوط به میزان فضای ورود به سیستم را که در حال حاضر استفاده می شود ، باز می گرداند و نشان می دهد که ورود به معامله نیاز به کوتاه کردن دارد.

برای کسب اطلاعات در مورد اندازه پرونده ورود فعلی ، حداکثر اندازه آن و گزینه AutoGrow برای پرونده ، می توانید از ستون های اندازه ، max_size و رشد برای آن پرونده ورود به سیستم در sys. database_files استفاده کنید.

از اضافه بار دیسک ورود به سیستم خودداری کنید. اطمینان حاصل کنید که ذخیره ورود به سیستم می تواند در برابر IOPS و شرایط تأخیر کم برای بار معامله شما مقاومت کند.

اندازه پرونده ورود به سیستم

برای کاهش اندازه فیزیکی یک پرونده ورود به سیستم فیزیکی ، باید پرونده ورود به سیستم را کوچک کنید. این زمانی مفید است که می دانید پرونده ورود به سیستم شامل فضای بلااستفاده است. شما می توانید یک پرونده ورود به سیستم را فقط در حالی که پایگاه داده آنلاین است کوچک کنید و حداقل یک پرونده ورود به سیستم مجازی (VLF) رایگان باشد. در بعضی موارد ، کاهش ورود به سیستم ممکن است تا بعد از قطع ورود به سیستم بعدی امکان پذیر نباشد.

عواملی مانند معامله طولانی مدت ، که VLF ها را برای یک دوره طولانی فعال نگه می دارند ، می توانند انقباض ورود به سیستم را محدود کنند یا حتی به هیچ وجه از کاهش ورود به سیستم جلوگیری کنند. برای اطلاعات ، به عواملی مراجعه کنید که می توانند کوتاه شدن ورود به سیستم را به تاخیر بیاندازند.

کوچک کردن یک پرونده ورود به سیستم یک یا چند VLF را حذف می کند که هیچ بخشی از ورود به سیستم منطقی (یعنی VLF های غیرفعال) را در خود جای نمی دهد. هنگامی که یک پرونده ورود به سیستم کاهش می یابد ، VLF های غیرفعال از انتهای پرونده ورود به سیستم حذف می شوند تا ورود به سیستم به اندازه هدف کاهش یابد.

قبل از کوچک کردن گزارش معامله ، عواملی را که می توانند به تاخیر در ورود به سیستم باشند ، در نظر داشته باشید. اگر بعد از کوچک شدن ورود به سیستم ، فضای ذخیره سازی دوباره مورد نیاز باشد ، ورود به سیستم معامله دوباره رشد می کند و با انجام این کار ، عملکرد سربار را در حین عملیات رشد ورود به سیستم معرفی می کند. برای اطلاعات بیشتر ، به توصیه های موجود در این موضوع مراجعه کنید.

یک پرونده ورود به سیستم را کوچک کنید (بدون کوچک کردن پرونده های پایگاه داده)

نظارت بر وقایع کوچک کردن پرونده ورود به سیستم

نظارت بر فضای ورود به سیستم

sys. database_files (transact-sql) (به ستون های اندازه ، max_size و رشد برای پرونده ورود یا پرونده ها مراجعه کنید.)

یک پرونده ورود به سیستم اضافه یا بزرگ کنید

می توانید با بزرگ کردن پرونده ورود به سیستم موجود (اگر فضای دیسک اجازه می دهد) یا با اضافه کردن یک پرونده ورود به پایگاه داده ، به طور معمول در دیسک متفاوت ، فضا را بدست آورید. یک پرونده ورود به سیستم معامله کافی است مگر اینکه فضای ورود به سیستم تمام شود و فضای دیسک نیز روی حجم موجود در پرونده ورود به سیستم تمام می شود.

  • برای افزودن یک پرونده ورود به پایگاه داده ، از بند Add Log File از بیانیه Database Alter استفاده کنید. اضافه کردن یک پرونده ورود به سیستم اجازه می دهد تا ورود به سیستم رشد کند.
  • برای بزرگنمایی پرونده ورود به سیستم ، از بند File Modify عبارت ALTER DATABASE استفاده کنید ، اندازه و نحو حداکثر را مشخص کنید. برای اطلاعات بیشتر ، به گزینه های فایل و پرونده های پرونده Alter Database (Transact-SQL) مراجعه کنید.

برای اطلاعات بیشتر ، به توصیه های موجود در این موضوع مراجعه کنید.

اندازه ورود به سیستم معامله TEMPDB را بهینه کنید

راه اندازی مجدد یک نمونه سرور ، ورود به سیستم معامله از پایگاه داده TEMPDB را به اندازه اصلی و قبل از اتوگرافی خود تغییر می دهد. این می تواند عملکرد گزارش معامله TEMPDB را کاهش دهد.

شما می توانید با افزایش اندازه گزارش معامله TEMPDB پس از شروع یا راه اندازی مجدد نمونه سرور ، از این سربار جلوگیری کنید. برای اطلاعات بیشتر ، به پایگاه داده TEMPDB مراجعه کنید.

کنترل رشد پرونده ورود به سیستم معامله را کنترل کنید

برای مدیریت رشد یک فایل ورود به سیستم از پرونده گزینه Alter Database (Transact-SQL) و فایل های گروه استفاده کنید. به موارد زیر توجه داشته باشید:

  • برای تغییر اندازه پرونده فعلی در واحدهای KB ، MB ، GB و TB ، از گزینه Size استفاده کنید.
  • برای تغییر افزایش رشد ، از گزینه FileGrowth استفاده کنید. مقدار 0 نشان می دهد که رشد اتوماتیک خاموش است و هیچ فضای اضافی مجاز نیست.
  • برای کنترل حداکثر اندازه پرونده ورود به سیستم در واحدهای KB ، MB ، GB و TB یا تنظیم رشد نامحدود ، از گزینه MaxSize استفاده کنید.

برای اطلاعات بیشتر ، به توصیه های موجود در این موضوع مراجعه کنید.

توصیه ها

در زیر برخی از توصیه های کلی هنگام کار با پرونده های ورود به سیستم معاملات آورده شده است:

افزایش اتوماتیک (AutoGrow) افزایش گزارش معامله ، مطابق با گزینه FileGrowth ، باید به اندازه کافی بزرگ باشد تا از نیازهای معاملات بار کار بماند. افزایش رشد پرونده در پرونده ورود به سیستم باید به اندازه کافی بزرگ باشد تا از گسترش مکرر جلوگیری شود. یک نشانگر خوب برای اندازه گیری صحیح یک ورود به معامله ، نظارت بر میزان ورود به سیستم اشغال شده در طول:

  • زمان لازم برای اجرای یک نسخه پشتیبان کامل ، زیرا پشتیبان گیری از ورود به سیستم نمی تواند رخ دهد تا پایان یابد.
  • زمان لازم برای بزرگترین عملیات نگهداری شاخص.
  • زمان لازم برای اجرای بزرگترین دسته در یک پایگاه داده.

هنگام تنظیم AutoGrow برای داده ها و پرونده های ورود به سیستم با استفاده از گزینه FileGrowth ، ممکن است ترجیح داده شود که به جای درصد آن را در اندازه تنظیم کنید ، برای کنترل بهتر نسبت رشد ، زیرا درصد در حال رشد است.

  • در نسخه های قبل از SQL Server 2022 (16. x) ، گزارش های معاملات نمی توانند از ابتدای پرونده فوری استفاده کنند ، بنابراین زمان رشد طولانی ورود به سیستم بسیار مهم است.
  • شروع با SQL Server 2022 (16. x) (کلیه نسخه ها) و در پایگاه داده Azure SQL ، اولیه سازی پرونده فوری می تواند از وقایع رشد ورود به سیستم تا 64 مگابایت بهره ببرد. افزایش پیش فرض اندازه رشد خودکار برای پایگاه داده های جدید 64 مگابایت است. پرونده های ورود به سیستم معاملات Autogrowth بزرگتر از 64 مگابایت نمی تواند از اولیه سازی پرونده فوری بهره مند شود.
  • به عنوان بهترین روش ، مقدار گزینه FileGrowth را بالاتر از 1،024 مگابایت برای سیاهههای مربوط به معامله تنظیم نکنید. مقادیر پیش فرض گزینه FileGrowth عبارتند از:

افزایش رشد کوچک می تواند VLF های کوچک زیادی ایجاد کند و می تواند عملکرد را کاهش دهد. برای تعیین توزیع بهینه VLF برای اندازه گزارش معاملات فعلی کلیه بانکهای اطلاعاتی در یک نمونه معین ، و افزایش رشد مورد نیاز برای دستیابی به اندازه مورد نیاز ، به این اسکریپت مراجعه کنید.

افزایش رشد بزرگ می تواند VLF های بسیار کمی و بزرگ ایجاد کند و همچنین می تواند بر عملکرد تأثیر بگذارد. برای تعیین توزیع بهینه VLF برای اندازه گزارش معاملات فعلی کلیه بانکهای اطلاعاتی در یک نمونه معین ، و افزایش رشد مورد نیاز برای دستیابی به اندازه مورد نیاز ، به این اسکریپت مراجعه کنید.

حتی با فعال کردن AutoGrow ، می توانید پیامی را دریافت کنید که ورود به سیستم معامله پر است ، اگر نتواند به اندازه کافی سریع رشد کند تا نیازهای پرس و جو شما را برآورده کند. برای کسب اطلاعات بیشتر در مورد تغییر افزایش رشد ، به گزینه های پرونده Alter Database (Transact-SQL) و گزینه های گروه فایل مراجعه کنید

داشتن چندین پرونده ورود به سیستم در یک بانک اطلاعاتی به هیچ وجه عملکرد را افزایش نمی دهد ، زیرا پرونده های ورود به سیستم معامله از پر کردن متناسب مانند پرونده های داده در یک گروه پرونده استفاده نمی کنند.

پرونده های log را می توان تنظیم کرد تا بطور خودکار کوچک شود. با این حال این توصیه نمی شود ، و ویژگی پایگاه داده Auto_shrink به طور پیش فرض روی FALSE تنظیم شده است. اگر Auto_Shrink روی True تنظیم شود ، کوچک شدن اتوماتیک اندازه یک پرونده را فقط در صورت استفاده بیش از 25 درصد از فضای آن کاهش می دهد.

پلتفرم های تجاری...
ما را در سایت پلتفرم های تجاری دنبال می کنید

برچسب : نویسنده : کمال بهروزکیا بازدید : 60 تاريخ : يکشنبه 6 فروردين 1402 ساعت: 17:07