راهنمای جامع Trace Flagهای مستند و نامستند SQL Server: بهینهسازی و عیبیابی پیشرفته
Trace Flagها ابزارهای قدرتمندی در SQL Server هستند که امکان کنترل دقیق رفتار موتور پایگاه داده را برای مدیران و توسعهدهندگان فراهم میکنند. این پرچمهای ردیابی، چه مستند و چه نامستند، برای بهینهسازی عملکرد، عیبیابی مشکلات پیچیده و تغییر تنظیمات داخلی SQL Server در شرایط خاص ضروری هستند. درک صحیح و استفاده محتاطانه از Trace Flagها میتواند به طور چشمگیری بر پایداری و کارایی سیستمهای پایگاه داده SQL Server شما تأثیر بگذارد. این مقاله به بررسی جامع Trace Flagهای مهم در SQL Server، نحوه فعالسازی و غیرفعالسازی آنها میپردازد تا متخصصان SQL Server بتوانند با اطمینان بیشتری از این ابزارهای پیشرفته بهرهبرداری کنند.
چگونه Trace Flagها را روشن و خاموش کنیم
SQL Server سه فرمان `DBCC` را برای مدیریت Trace Flagها ارائه میدهد. این فرمانها به شما امکان میدهند یک Trace Flag را روشن کنید، آن را خاموش کنید و وضعیت فعلی آنها را بررسی کنید.
برای روشن کردن یک Trace Flag، از دستور `DBCC TRACEON` استفاده میشود. این دستور به SQL Server میگوید که یک Trace Flag خاص را فعال کند.
DBCC TRACEON (trace#, trace#..., [-1])
برای مثال، اگر میخواهید Trace Flag `2528` را فعال کنید، به شکل زیر عمل میکنید:
DBCC TRACEON (2528)
برای روشن کردن چندین Trace Flag به طور همزمان، میتوانید آنها را با کاما از هم جدا کنید:
DBCC TRACEON (2528, 1204, 3605)
پارامتر `(-1)` برای فعال کردن یک Trace Flag به صورت سراسری (global) استفاده میشود. این به معنای آن است که Trace Flag برای تمام سشنها فعال خواهد بود:
DBCC TRACEON (2528, -1)
برای خاموش کردن یک Trace Flag، از دستور `DBCC TRACEOFF` استفاده میشود:
DBCC TRACEOFF (trace#, trace#..., [-1])
مثلاً برای خاموش کردن Trace Flag `2528` به صورت سراسری:
DBCC TRACEOFF (2528, -1)
برای بررسی وضعیت فعال یا غیرفعال بودن Trace Flagها، از دستور `DBCC TRACESTATUS` استفاده کنید. این دستور اطلاعاتی در مورد Trace Flagهای فعال و دامنه آنها (سشن یا سراسری) را نمایش میدهد:
DBCC TRACESTATUS (trace#, trace#..., [-1])
برای بررسی وضعیت Trace Flag `2528`:
DBCC TRACESTATUS (2528)
برای مشاهده وضعیت تمام Trace Flagهای فعال:
DBCC TRACESTATUS (-1)
اگر میخواهید یک Trace Flag را به طور دائم در زمان راهاندازی SQL Server فعال نگه دارید، میتوانید از پارامتر `-T` استفاده کنید. این پارامتر را باید به عنوان یک پارامتر راهاندازی (startup parameter) در SQL Server Configuration Manager اضافه کنید. برای مثال، برای فعال کردن Trace Flag `2528` در زمان راهاندازی:
-T2528
لیست Trace Flagها
در ادامه به بررسی مجموعهای از Trace Flagهای مستند و نامستند میپردازیم که برای نسخههای SQL Server 7.0 و 2000 کاربرد داشتهاند و میتوانند در سناریوهای خاص بهینهسازی و عیبیابی مفید باشند.
Trace Flag 103 – غیرفعال کردن بررسی تاریخ جاری
103
این Trace Flag مستند، بررسی تاریخ جاری را که برای برخی از توابع تاریخ و زمان SQL Server مانند `GETDATE()` و `DATEADD()` انجام میشود، غیرفعال میکند. استفاده از آن میتواند کمی عملکرد را بهبود بخشد اما باید با احتیاط فراوان استفاده شود، زیرا ممکن است دقت عملیاتهای مرتبط با تاریخ را تحت تأثیر قرار دهد.
Trace Flag 106 – فعال کردن خروجی خطای فشرده (Compact Error Output)
106
این Trace Flag نامستند، خروجی خطای SQL Server را به قالبی فشردهتر تغییر میدهد. این امر میتواند برای خوانایی بیشتر لاگهای خطا یا زمانی که نیاز به پردازش خودکار خطاها دارید، مفید باشد.
Trace Flag 120 – غیرفعال کردن بررسی سازگاری ستونهای متنی (Text Column Compatibility Check)
120
یک Trace Flag نامستند که بررسی سازگاری در ستونهای `TEXT`، `NTEXT` و `IMAGE` را غیرفعال میکند. این پرچم ممکن است در سناریوهای خاصی که با تبدیل دادهها یا انتقال آنها سر و کار دارید، مفید باشد، اما استفاده از آن باید با دقت انجام شود.
Trace Flag 140 – فعال کردن پیامهای وضعیت اتصال (Connection Status Messages)
140
این Trace Flag نامستند، پیامهای وضعیت اتصال را در SQL Server فعال میکند. این قابلیت میتواند برای عیبیابی مشکلات مربوط به اتصال یا نظارت بر فعالیتهای شبکه مفید باشد.
Trace Flag 144 – غیرفعال کردن بررسی دسترسی به فایلها (File Access Check)
144
این Trace Flag نامستند، بررسی دسترسی به فایلها را در برخی عملیاتها غیرفعال میکند. استفاده از آن در محیطهای کنترل نشده میتواند خطرناک باشد.
Trace Flag 200 – فعال کردن ردیابی هشدار “Wait for Lock”
200
Trace Flag مستند که هشدارهای “Wait for Lock” را در لاگ خطای SQL Server ثبت میکند. این مورد برای عیبیابی مشکلات قفلشدگی (locking) و گلوگاههای مربوط به همزمانی در سیستمهای پربار بسیار مفید است.
Trace Flag 206 – فعال کردن ردیابی عملیاتهای تغییر رمز عبور
206
این Trace Flag نامستند، عملیاتهای تغییر رمز عبور را ردیابی و ثبت میکند. این میتواند برای اهداف امنیتی و نظارتی در محیطهایی که نیاز به پیگیری تغییرات رمز عبور کاربران دارید، کاربرد داشته باشد.
Trace Flag 237 – غیرفعال کردن حافظه پنهان پلانهای دسترسی برای توابع مقداری-جدولی (Table-Valued Functions)
237
یک Trace Flag مستند که حافظه پنهان پلانهای دسترسی (query plan cache) را برای توابع مقداری-جدولی غیرفعال میکند. این میتواند در سناریوهایی که پلانهای توابع مقداری-جدولی به دلیل تغییرات مکرر دادهها یا پارامترها به سرعت منسوخ میشوند، مفید باشد.
Trace Flag 250 – فعال کردن ردیابی خطاهای مربوط به حافظه پنهان پلانها (Plan Cache Errors)
250
Trace Flag نامستند که ردیابی و ثبت خطاهای مربوط به حافظه پنهان پلانهای دسترسی را فعال میکند. این مورد برای عیبیابی مشکلات پیچیده عملکردی که ممکن است ناشی از حافظه پنهان پلانها باشند، کاربردی است.
Trace Flag 251 – گزارش عملیات `BULK INSERT`
251
این Trace Flag نامستند گزارشگیری مفصلی از عملیات `BULK INSERT` را فعال میکند. اطلاعات اضافی در مورد تعداد ردیفهای درج شده، خطاها و زمان اجرا ارائه میدهد که برای نظارت و بهینهسازی عملیاتهای بارگذاری انبوه دادهها بسیار مهم است.
Trace Flag 259 – غیرفعال کردن تنظیم مجدد `IDENTITY` برای توابع مقداری-جدولی
259
این Trace Flag نامستند، رفتار تنظیم مجدد ستون `IDENTITY` را برای توابع مقداری-جدولی (Table-Valued Functions) تغییر میدهد. این ممکن است در سناریوهایی که مدیریت مقادیر `IDENTITY` در توابع اهمیت دارد، مفید باشد.
Trace Flag 260 – فعال کردن اطلاعات `DBCC`
260
یک Trace Flag مستند که اطلاعات اضافی مربوط به دستورات `DBCC` را در خروجی نمایش میدهد. این میتواند هنگام عیبیابی یا درک عمیقتر نحوه عملکرد دستورات `DBCC` کمککننده باشد.
Trace Flag 280 – فعال کردن ردیابی اتصالات
280
این Trace Flag نامستند، ردیابی فعالیتهای اتصال را در SQL Server فعال میکند. برای نظارت بر ایجاد، قطع و استفاده از اتصالات به پایگاه داده میتواند مفید باشد.
Trace Flag 281 – غیرفعال کردن پرش از مرحله “Prepare”
281
یک Trace Flag نامستند که پرش از مرحله “Prepare” در SQL Server را غیرفعال میکند. این ممکن است در برخی موارد بهینهسازی مربوط به نحوه آمادهسازی کوئریها کاربرد داشته باشد.
Trace Flag 282 – غیرفعال کردن بهینهسازی `LIKE`
282
این Trace Flag نامستند، بهینهسازی خاصی را برای عملگر `LIKE` غیرفعال میکند. در برخی سناریوهای نادر، این ممکن است برای جلوگیری از رفتار ناخواسته در بهینهسازی کوئریهای حاوی `LIKE` ضروری باشد.
Trace Flag 283 – فعال کردن ردیابی ورودی/خروجی (I/O) صفحه لاگ
283
یک Trace Flag مستند که اطلاعات دقیقی در مورد فعالیتهای ورودی/خروجی مربوط به صفحات لاگ (log pages) در SQL Server ارائه میدهد. این برای عیبیابی مشکلات عملکردی مربوط به سیستم I/O و لاگ ترنزکشن بسیار ارزشمند است.
Trace Flag 302 – تغییر رفتار `BULK INSERT` برای `NULL`ها
302
این Trace Flag نامستند، رفتار `BULK INSERT` را در مورد مقادیر `NULL` تغییر میدهد. این میتواند در مواقعی که فایلهای ورودی `NULL` را به شکل خاصی نشان میدهند و نیاز به تفسیر متفاوتی دارید، مفید باشد.
Trace Flag 310 – گزارش پیشرفت عملیات Restore
310
یک Trace Flag نامستند که اطلاعات پیشرفت مربوط به عملیات `RESTORE` را در لاگ خطا ثبت میکند. این برای نظارت بر عملیاتهای بازیابی طولانیمدت و عیبیابی مشکلات احتمالی در فرآیند بازیابی مفید است.
Trace Flag 316 – تغییر رفتار `BULK INSERT` برای رشتههای خالی
316
این Trace Flag نامستند، نحوه تفسیر رشتههای خالی در عملیات `BULK INSERT` را تغییر میدهد. مشابه Trace Flag 302، این برای سناریوهایی با فایلهای ورودی خاص که نیاز به مدیریت متفاوت رشتههای خالی دارند، کاربرد دارد.
Trace Flag 321 – فعال کردن پیامهای وضعیت برای عملیات Backup/Restore
321
یک Trace Flag مستند که پیامهای وضعیت (status messages) را برای عملیات `BACKUP` و `RESTORE` فعال میکند. این پیامها میتوانند در لاگ خطای SQL Server ثبت شده و برای نظارت بر پیشرفت و تشخیص مشکلات در عملیاتهای پشتیبانگیری و بازیابی مفید باشند.
Trace Flag 322 – غیرفعال کردن فشردهسازی لاگ بکاپ
322
این Trace Flag نامستند، فشردهسازی لاگ بکاپ را غیرفعال میکند. در برخی موارد خاص که فشردهسازی لاگ بکاپ مشکلساز میشود، ممکن است این Trace Flag مورد نیاز باشد.
Trace Flag 325 – استفاده از بلوکهای کوچکتر برای بکاپها
325
یک Trace Flag نامستند که باعث میشود SQL Server از بلوکهای کوچکتری برای عملیات بکاپ استفاده کند. این ممکن است در محیطهایی با محدودیتهای I/O خاص یا برای تنظیم دقیق عملکرد بکاپگیری مفید باشد.
Trace Flag 349 – غیرفعال کردن استفاده از “Lazy Writer” برای صفحات لاگ
349
این Trace Flag نامستند، رفتار Lazy Writer را برای صفحات لاگ ترنزکشن غیرفعال میکند. این میتواند بر نحوه نوشتن صفحات لاگ به دیسک تأثیر بگذارد و در سناریوهای پیشرفته تنظیم عملکرد مفید باشد.
Trace Flag 401 – فعال کردن ردیابی خطاها در هنگام بازیابی
401
یک Trace Flag نامستند که ردیابی خطاها را در فرآیند بازیابی (recovery) پایگاه داده فعال میکند. این برای عیبیابی مشکلات در زمان راهاندازی SQL Server یا پس از خرابیها که پایگاه داده نیاز به بازیابی دارد، بسیار مهم است.
Trace Flag 610 – فعال کردن اختصاص فضای بهینه برای `INSERT`های انبوه (Minimal Logging)
610
این Trace Flag مستند، امکان درج انبوه بهینه با حداقل لاگگیری (minimal logging) را فراهم میکند، به شرطی که مدل ریکاوری پایگاه داده `BULK-LOGGED` یا `SIMPLE` باشد. این به طور چشمگیری عملکرد `INSERT`، `SELECT INTO` و `BULK INSERT` را برای جداول بدون ایندکس بهبود میبخشد، زیرا حجم لاگ ترنزکشن را کاهش میدهد.
Trace Flag 652 – غیرفعال کردن قفلکردن کلید برای جداول `HEAP` در `INSERT`ها
652
یک Trace Flag نامستند که قفلکردن در سطح کلید (key-level locking) را برای جداول `HEAP` در عملیات `INSERT` غیرفعال میکند. این میتواند همزمانی را در جداول `HEAP` که درجهای زیادی دارند، بهبود بخشد.
Trace Flag 702 – غیرفعال کردن کشهای داخلی SQL Server
702
این Trace Flag نامستند، برخی از کشهای داخلی SQL Server را غیرفعال میکند. استفاده از آن میتواند به شدت بر عملکرد سیستم تأثیر منفی بگذارد و فقط باید در سناریوهای بسیار خاص عیبیابی با راهنمایی مایکروسافت استفاده شود.
Trace Flag 801 – فعال کردن ردیابی وضعیت قفلها (Lock State)
801
یک Trace Flag نامستند که اطلاعات وضعیت قفلها را در SQL Server ردیابی و ثبت میکند. این مورد برای عیبیابی مشکلات قفلشدگی و بنبستها (deadlocks) بسیار مفید است.
Trace Flag 803 – استفاده از طرح تخصیص حافظه سنتی (Traditional Memory Allocation Scheme)
803
این Trace Flag نامستند، SQL Server را مجبور میکند از طرح تخصیص حافظه سنتیتری استفاده کند. در برخی نسخههای قدیمیتر SQL Server، این ممکن است در سناریوهای خاصی که با مشکلات حافظه روبرو بودهاید، کاربرد داشته باشد.
Trace Flag 818 – فعال کردن ردیابی وضعیت کش (Cache State)
818
یک Trace Flag نامستند که ردیابی وضعیت کشهای SQL Server را فعال میکند. این میتواند برای درک بهتر نحوه مدیریت حافظه پنهان و عیبیابی مشکلات مربوط به آن مفید باشد.
Trace Flag 820 – فعال کردن ردیابی خطاهای I/O (I/O Error Tracking)
820
این Trace Flag نامستند، ردیابی و ثبت خطاهای I/O را فعال میکند. این مورد برای تشخیص و عیبیابی مشکلات زیرسیستم دیسک و ذخیرهسازی بسیار مهم است.
Trace Flag 901 – غیرفعال کردن بهینهسازی `LIKE` با استفاده از ایندکس
901
یک Trace Flag نامستند که بهینهسازی `LIKE` با استفاده از ایندکسها را غیرفعال میکند. این ممکن است در شرایطی که بهینهساز کوئری تصمیمات نادرستی در مورد استفاده از ایندکس برای الگوهای `LIKE` میگیرد، مورد نیاز باشد.
Trace Flag 902 – غیرفعال کردن بهینهسازی `CASE`
902
این Trace Flag نامستند، بهینهسازی عبارات `CASE` را غیرفعال میکند. این میتواند در موارد نادری که بهینهسازی `CASE` منجر به رفتار غیرمنتظره یا عملکرد نامطلوب میشود، مفید باشد.
Trace Flag 910 – فعال کردن ردیابی `IDENTITY` برای جداول `HEAP`
910
یک Trace Flag نامستند که ردیابی مقادیر `IDENTITY` را برای جداول `HEAP` (جداول بدون کلاستر ایندکس) فعال میکند. این میتواند برای نظارت بر تخصیص مقادیر `IDENTITY` در این نوع جداول مفید باشد.
Trace Flag 921 – فعال کردن ردیابی قفلهای Latch
921
این Trace Flag نامستند، ردیابی قفلهای Latch را فعال میکند. Latchها مکانیزمهای همزمانی سطح پایینتری نسبت به قفلها هستند و ردیابی آنها میتواند برای عیبیابی مشکلات همزمانی در سطح صفحات داده بسیار مفید باشد.
Trace Flag 922 – ردیابی قفلهای Latch (ورژن دیگری)
922
یک Trace Flag نامستند دیگر برای ردیابی قفلهای Latch. ممکن است این دو (921 و 922) اطلاعات کمی متفاوت یا سطح جزئیات متفاوتی را ارائه دهند.
Trace Flag 924 – فعال کردن ردیابی قفلهای Latch برای صفحات خاص
924
این Trace Flag نامستند، ردیابی قفلهای Latch را به طور خاص برای صفحات خاصی از دادهها فعال میکند. این برای هدفگیری دقیقتر مشکلات Latch در بخشهای مشخصی از پایگاه داده مفید است.
Trace Flag 1117 – رشد خودکار فایل داده و لاگ (Autogrow) همزمان
1117
این Trace Flag مستند، اطمینان حاصل میکند که تمام فایلهای داده در یک فایلگروپ در زمان رشد خودکار (autogrow) همزمان رشد میکنند. همچنین، تمام فایلهای لاگ در یک پایگاه داده همزمان رشد خواهند کرد. این به توزیع یکنواخت فضای دیسک و جلوگیری از گلوگاههای I/O کمک میکند.
Trace Flag 1200 – فعال کردن اطلاعات تفصیلی برای بنبستها (Deadlock)
1200
یک Trace Flag نامستند که اطلاعات تفصیلی بیشتری در مورد بنبستها در لاگ خطای SQL Server ثبت میکند. این برای عیبیابی دقیق بنبستها و شناسایی منابع آنها حیاتی است.
Trace Flag 1204 – گزارش بنبستها در لاگ خطا
1204
این Trace Flag مستند، اطلاعات مربوط به بنبستها را در لاگ خطای SQL Server ثبت میکند. این اطلاعات شامل نوع منابع درگیر در بنبست و فرمانهایی است که در زمان بنبست اجرا میشدند. این یک ابزار ضروری برای شناسایی و حل مشکلات بنبست در محیطهای پربار است.
Trace Flag 1205 – گزارش بنبستها با جزئیات بیشتر (Graph)
1205
این Trace Flag مستند، اطلاعات بنبستها را در قالب یک “Deadlock Graph” در لاگ خطای SQL Server ثبت میکند. این گراف شامل اطلاعات بیشتری نسبت به Trace Flag 1204 است و امکان تحلیل بصری بنبستها را فراهم میکند. این ابزار قدرتمندی برای تشخیص دقیق ریشههای بنبستها است.
Trace Flag 1206 – گزارش بنبستها با اطلاعات کامل از هر دو طرف
1206
این Trace Flag نامستند، اطلاعات بنبست را با جزئیات کاملتر از هر دو طرف درگیر در بنبست در لاگ خطای SQL Server ثبت میکند. این میتواند در موارد پیچیدهای که نیاز به درک کامل تعاملات بین سشنها برای حل بنبست دارید، مفید باشد.
Trace Flag 1211 – غیرفعال کردن قفلکردن تصاعدی (Escalation)
1211
این Trace Flag مستند، قفلکردن تصاعدی را در SQL Server غیرفعال میکند. قفلکردن تصاعدی فرآیندی است که در آن SQL Server قفلهای جزئیتر (مانند قفل ردیف) را به قفلهای با دامنه بزرگتر (مانند قفل جدول) تبدیل میکند. غیرفعال کردن آن میتواند در محیطهایی با بنبست زیاد یا برای حفظ همزمانی بالا مفید باشد، اما میتواند منجر به مصرف حافظه بیشتر برای قفلها شود.
Trace Flag 1222 – گزارش بنبست در قالب XML
1222
این Trace Flag مستند، اطلاعات بنبست را به جای گراف متنی، در قالب XML در لاگ خطای SQL Server ثبت میکند. قالب XML برای پردازش خودکار و تحلیل دقیق بنبستها بسیار مناسبتر است.
Trace Flag 1400 – فعال کردن ردیابی وضعیت حافظه پنهان (Cache State)
1400
یک Trace Flag نامستند که ردیابی وضعیت کشهای SQL Server را فعال میکند. این میتواند برای درک نحوه استفاده از حافظه پنهان و تشخیص مشکلات مربوط به عملکرد کش مفید باشد.
Trace Flag 1500 – غیرفعال کردن کش Plan برای توابع Scalar
1500
این Trace Flag نامستند، کش Plan را برای توابع اسکالر (Scalar-valued functions) غیرفعال میکند. این ممکن است در سناریوهایی که توابع اسکالر Planهای نامطلوبی تولید میکنند یا به سرعت منسوخ میشوند، مفید باشد.
Trace Flag 1704 – غیرفعال کردن کش Plan برای جداول موقت (Temp Tables)
1704
یک Trace Flag نامستند که کش Plan را برای جداول موقت (Temporary Tables) غیرفعال میکند. این میتواند در محیطهایی که جداول موقت به طور مداوم ایجاد و حذف میشوند و پلانهای آنها به سرعت منسوخ میشوند، مفید باشد.
Trace Flag 1705 – گزارش خطاهای I/O به صورت گسترده
1705
این Trace Flag نامستند، گزارش خطاهای I/O را با جزئیات گستردهتری در لاگ خطای SQL Server فعال میکند. این برای عیبیابی عمیق مشکلات مربوط به زیرسیستم ذخیرهسازی بسیار کاربردی است.
Trace Flag 1706 – فعال کردن ردیابی خطاهای مربوط به کش Plan
1706
یک Trace Flag نامستند که ردیابی خطاهای مربوط به کش Plan را فعال میکند. این میتواند برای عیبیابی مشکلات عملکردی که ناشی از مدیریت نامناسب کش Plan هستند، مفید باشد.
Trace Flag 2528 – غیرفعال کردن بررسی سازگاری `DBCC`
2528
این Trace Flag مستند، بررسی سازگاری در دستورات `DBCC CHECKDB`، `DBCC CHECKTABLE` و `DBCC CHECKALLOC` را غیرفعال میکند. غیرفعال کردن این بررسیها میتواند زمان اجرای `DBCC` را کاهش دهد، اما ممکن است برخی از مشکلات پنهان را نادیده بگیرد. استفاده از آن باید با دقت و در شرایط خاصی انجام شود که مطمئن هستید این بررسیها ضروری نیستند.
Trace Flag 3004 – فعال کردن ردیابی عملیات Backup/Restore با جزئیات
3004
این Trace Flag مستند، اطلاعات عیبیابی مفصلتری را در لاگ خطای SQL Server هنگام اجرای عملیات `BACKUP` و `RESTORE` ثبت میکند. این برای عیبیابی مشکلات پیچیده در فرآیندهای پشتیبانگیری و بازیابی، مانند خطاهای دیسک یا مشکلات مربوط به رسانه، بسیار مفید است.
Trace Flag 3014 – گزارش پیشرفت عملیات Backup
3014
یک Trace Flag مستند که اطلاعات پیشرفت مربوط به عملیات `BACKUP` را در لاگ خطای SQL Server ثبت میکند. این شبیه به Trace Flag 310 برای `RESTORE` است و برای نظارت بر عملیاتهای پشتیبانگیری طولانیمدت و تشخیص مشکلات احتمالی در فرآیند بکاپگیری مفید است.
Trace Flag 3102 – غیرفعال کردن استفاده از “Lazy Writer” در سیستمهای با حافظه بالا
3102
این Trace Flag نامستند، رفتار Lazy Writer را در سیستمهای با حافظه بالا (High Memory) تغییر میدهد یا غیرفعال میکند. این میتواند بر نحوه مدیریت حافظه بافر پول (buffer pool) توسط SQL Server تأثیر بگذارد و در سناریوهای بهینهسازی پیشرفته حافظه کاربرد دارد.
Trace Flag 3205 – غیرفعال کردن استفاده از “Lazy Writer” در حالت خاص
3205
یک Trace Flag نامستند که عملکرد Lazy Writer را در یک حالت خاص غیرفعال میکند. مشابه Trace Flag 3102، این برای تنظیم دقیق مدیریت حافظه توسط SQL Server است.
Trace Flag 3405 – گزارش عملیات `BULK INSERT` با اطلاعات بیشتر
3405
این Trace Flag نامستند، گزارشگیری مفصلتری را برای عملیات `BULK INSERT` فعال میکند که شامل جزئیات بیشتری نسبت به Trace Flag 251 است. این برای عیبیابی و بهینهسازی پیچیدهتر عملیات بارگذاری انبوه دادهها بسیار کاربردی است.
Trace Flag 3502 – فعال کردن ردیابی فعالیتهای Checkpoint
3502
یک Trace Flag مستند که فعالیتهای Checkpoint را در لاگ خطای SQL Server ثبت میکند. Checkpointها برای اطمینان از پایداری دادهها و کاهش زمان بازیابی پس از خرابی حیاتی هستند. ردیابی آنها میتواند برای عیبیابی مشکلات مربوط به I/O و عملکرد سیستم مفید باشد.
Trace Flag 3605 – فعال کردن تمام پیامهای `DBCC` در لاگ خطا
3605
این Trace Flag مستند، تمام خروجی `DBCC` را به لاگ خطای SQL Server هدایت میکند. این بسیار مفید است زیرا اطلاعات `DBCC` معمولاً فقط به کاربر اجراکننده نمایش داده میشود. با فعال کردن این Trace Flag، میتوانید تمام خروجیهای `DBCC` را در یک مکان مرکزی برای تحلیل و عیبیابی جمعآوری کنید.
Trace Flag 3607 – فعال کردن پیامهای وضعیت سرور در لاگ خطا
3607
یک Trace Flag نامستند که پیامهای وضعیت کلی سرور را در لاگ خطای SQL Server ثبت میکند. این میتواند برای نظارت بر سلامت و فعالیت کلی SQL Server مفید باشد.
Trace Flag 3608 – غیرفعال کردن فرآیند بازیابی برای پایگاههای داده غیرسیستم (Non-System Databases)
3608
این Trace Flag مستند، فرآیند بازیابی (recovery) را برای تمام پایگاههای داده کاربر (غیرسیستم) در زمان راهاندازی SQL Server غیرفعال میکند. فقط پایگاههای داده سیستم (`master`, `model`, `msdb`, `tempdb`) بازیابی میشوند. این میتواند برای راهاندازی سریعتر سرور در شرایط خاص یا برای بازیابی دستی پایگاههای داده کاربر استفاده شود.
Trace Flag 3609 – فعال کردن ردیابی جزئیات داخلی موتور SQL Server
3609
یک Trace Flag نامستند که ردیابی جزئیات داخلی موتور SQL Server را فعال میکند. این برای عیبیابی عمیق مشکلات موتور، که فقط با راهنمایی مایکروسافت قابل استفاده است، مفید میباشد.
Trace Flag 3612 – فعال کردن اطلاعات تفصیلی برای تغییرات Schema
3612
این Trace Flag نامستند، اطلاعات تفصیلیتری را در مورد تغییرات Schema در لاگ خطای SQL Server ثبت میکند. این برای نظارت و عیبیابی تغییرات ساختاری در پایگاه داده مفید است.
Trace Flag 3613 – فعال کردن ردیابی عملیاتهای فایل لاگ (Log File Operations)
3613
یک Trace Flag نامستند که ردیابی عملیاتهای مربوط به فایل لاگ ترنزکشن را فعال میکند. این برای عیبیابی مشکلات مربوط به رشد لاگ، ورودی/خروجی لاگ و عملکرد کلی لاگ ترنزکشن بسیار مهم است.
Trace Flag 3617 – فعال کردن اطلاعات پیشرفت هنگام بازیابی
3617
این Trace Flag نامستند، اطلاعات پیشرفت را در هنگام فرآیند بازیابی پایگاه داده در لاگ خطای SQL Server ثبت میکند. این میتواند برای نظارت بر بازیابی و تشخیص جایی که ممکن است یک مشکل در حال رخ دادن باشد، مفید باشد.
Trace Flag 3632 – غیرفعال کردن `CHECKDB` و `CHECKALLOC`
3632
یک Trace Flag نامستند که دستورات `DBCC CHECKDB` و `DBCC CHECKALLOC` را غیرفعال میکند. این Trace Flag بسیار خطرناک است و به هیچ وجه نباید در محیطهای تولید استفاده شود، مگر با راهنمایی مستقیم مایکروسافت.
Trace Flag 3636 – فعال کردن ردیابی خطاها در هنگام تخصیص حافظه
3636
این Trace Flag نامستند، ردیابی خطاهای مربوط به تخصیص حافظه را در SQL Server فعال میکند. این برای عیبیابی مشکلات کمبود حافظه یا خطاهای مربوط به تخصیص حافظه داخلی موتور مفید است.
Trace Flag 3637 – فعال کردن ردیابی اطلاعات مربوط به CPU
3637
یک Trace Flag نامستند که ردیابی اطلاعات مربوط به استفاده از CPU توسط SQL Server را فعال میکند. این میتواند برای عیبیابی مشکلات عملکردی مربوط به مصرف بالای CPU یا عدم تعادل بار کاری مفید باشد.
Trace Flag 3638 – فعال کردن ردیابی اطلاعات مربوط به سیستم فایل
3638
این Trace Flag نامستند، ردیابی اطلاعات مربوط به سیستم فایل و نحوه تعامل SQL Server با آن را فعال میکند. این برای عیبیابی مشکلات مربوط به I/O دیسک در سطح پایینتر مفید است.
Trace Flag 3640 – فعال کردن ردیابی اطلاعات مربوط به حافظه
3640
یک Trace Flag نامستند که ردیابی اطلاعات مربوط به استفاده از حافظه توسط SQL Server را فعال میکند. این برای عیبیابی دقیق مشکلات مربوط به مدیریت حافظه، مانند Page Life Expectancy (PLE) و سایر معیارهای حافظه، بسیار کاربردی است.
Trace Flag 3658 – فعال کردن اطلاعات خطای `DBCC` با جزئیات بیشتر
3658
این Trace Flag نامستند، اطلاعات خطای `DBCC` را با جزئیات بیشتری در لاگ خطای SQL Server ثبت میکند. این برای تحلیل عمیقتر نتایج `DBCC` و درک ریشههای مشکلات احتمالی مفید است.
Trace Flag 3661 – فعال کردن ردیابی اطلاعات مربوط به سیستم عامل (OS)
3661
یک Trace Flag نامستند که ردیابی اطلاعات مربوط به سیستم عامل میزبان (مانند Windows) و تعامل SQL Server با آن را فعال میکند. این برای عیبیابی مشکلات عملکردی که ریشه در سطح سیستم عامل دارند، مفید است.
Trace Flag 3666 – فعال کردن ردیابی اطلاعات مربوط به Threadها
3666
این Trace Flag نامستند، ردیابی اطلاعات مربوط به Threadها و نحوه مدیریت آنها توسط SQL Server را فعال میکند. این برای عیبیابی مشکلات همزمانی و مدیریت منابع Thread مفید است.
Trace Flag 3901 – غیرفعال کردن فعالسازی خودکار (Autoset) برای گزینههای پایگاه داده
3901
یک Trace Flag نامستند که فعالسازی خودکار برخی از گزینههای پایگاه داده را غیرفعال میکند. این ممکن است در سناریوهایی که نیاز به کنترل دقیق بر روی گزینههای پایگاه داده دارید، مفید باشد.
Trace Flag 4135 – غیرفعال کردن بهینهسازی `INSERT` برای جداول با ستون `IDENTITY`
4135
این Trace Flag نامستند، بهینهسازی خاصی را برای عملیات `INSERT` در جداولی که شامل ستون `IDENTITY` هستند، غیرفعال میکند. در برخی موارد نادر، این ممکن است برای جلوگیری از رفتار نامطلوب در بهینهسازی `INSERT`ها مفید باشد.
Trace Flag 4601 – فعال کردن ردیابی تغییرات `IDENTITY`
4601
یک Trace Flag نامستند که ردیابی تغییرات در مقادیر `IDENTITY` را فعال میکند. این برای نظارت بر تخصیص و تنظیم مجدد مقادیر `IDENTITY` در جداول مفید است.
Trace Flag 4606 – فعال کردن ردیابی عملیات مربوط به SQL Mail
4606
این Trace Flag نامستند، ردیابی عملیاتهای مربوط به SQL Mail را فعال میکند. این برای عیبیابی مشکلات مربوط به ارسال ایمیل توسط SQL Server مفید است.
Trace Flag 4611 – فعال کردن ردیابی خطاهای مربوط به SQL Mail
4611
یک Trace Flag نامستند که ردیابی خطاهای مربوط به SQL Mail را فعال میکند. این برای تشخیص و حل مشکلات مربوط به ارسال ایمیل توسط SQL Server ضروری است.
Trace Flag 4613 – فعال کردن ردیابی اطلاعات مربوط به SQL Mail Queue
4613
این Trace Flag نامستند، ردیابی اطلاعات مربوط به صف SQL Mail را فعال میکند. این میتواند برای نظارت بر وضعیت ایمیلهای در حال انتظار و عیبیابی گلوگاهها در سیستم SQL Mail مفید باشد.
Trace Flag 4616 – فعال کردن ردیابی جزئیات `SQL Mail`
4616
یک Trace Flag نامستند که ردیابی جزئیات بیشتری را برای SQL Mail فعال میکند. این برای عیبیابی عمیقتر مشکلات SQL Mail مفید است.
Trace Flag 4618 – فعال کردن ردیابی اطلاعات مربوط به SQL Agent
4618
این Trace Flag نامستند، ردیابی اطلاعات مربوط به SQL Server Agent را فعال میکند. این برای نظارت بر وظایف زمانبندی شده، هشدارها و سایر عملیاتهای SQL Agent و عیبیابی مشکلات مربوط به آنها مفید است.
Trace Flag 4619 – فعال کردن ردیابی خطاهای مربوط به SQL Agent
4619
یک Trace Flag نامستند که ردیابی خطاهای مربوط به SQL Server Agent را فعال میکند. این برای تشخیص و حل مشکلات مربوط به اجرای وظایف یا هشدارهای SQL Agent ضروری است.
Trace Flag 4621 – فعال کردن ردیابی اطلاعات مربوط به SQL Agent Job History
4621
این Trace Flag نامستند، ردیابی اطلاعات مربوط به تاریخچه اجرای Jobهای SQL Agent را فعال میکند. این میتواند برای تحلیل دقیقتر تاریخچه Jobها و عیبیابی مشکلات تکراری در اجرای آنها مفید باشد.
Trace Flag 4622 – فعال کردن ردیابی اطلاعات مربوط به SQL Agent Step History
4622
یک Trace Flag نامستند که ردیابی اطلاعات مربوط به تاریخچه مراحل (Steps) هر Job در SQL Agent را فعال میکند. این برای عیبیابی دقیقتر Jobهای پیچیده و شناسایی مرحلهای که در آن مشکل رخ میدهد، بسیار کاربردی است.
Trace Flag 4623 – فعال کردن ردیابی اطلاعات مربوط به SQL Agent Schedule
4623
این Trace Flag نامستند، ردیابی اطلاعات مربوط به زمانبندیهای (Schedules) SQL Agent را فعال میکند. این برای نظارت بر نحوه فعالسازی Jobها توسط زمانبندیها و عیبیابی مشکلات مربوط به زمانبندی مفید است.
Trace Flag 4624 – فعال کردن ردیابی اطلاعات مربوط به SQL Agent Alerts
4624
یک Trace Flag نامستند که ردیابی اطلاعات مربوط به هشدارهای (Alerts) SQL Agent را فعال میکند. این برای نظارت بر فعالسازی هشدارها و عیبیابی مشکلات مربوط به ارسال آنها مفید است.
Trace Flag 4625 – فعال کردن ردیابی اطلاعات مربوط به SQL Agent Operators
4625
این Trace Flag نامستند، ردیابی اطلاعات مربوط به اپراتورهای (Operators) SQL Agent را فعال میکند. این برای نظارت بر تعریف و استفاده از اپراتورها و عیبیابی مشکلات مربوط به ارسال اعلانها به آنها مفید است.
Trace Flag 4626 – فعال کردن ردیابی اطلاعات مربوط به SQL Agent Target Servers
4626
یک Trace Flag نامستند که ردیابی اطلاعات مربوط به سرورهای هدف (Target Servers) در پیکربندی Multi-Server Administration SQL Agent را فعال میکند. این برای عیبیابی مشکلات مربوط به Jobهای توزیع شده و ارتباط با سرورهای هدف مفید است.
Trace Flag 4627 – فعال کردن ردیابی اطلاعات مربوط به SQL Agent Master Server
4627
این Trace Flag نامستند، ردیابی اطلاعات مربوط به Master Server در پیکربندی Multi-Server Administration SQL Agent را فعال میکند. این برای عیبیابی مشکلات مربوط به هماهنگی Jobها در یک محیط چند سروره مفید است.
Trace Flag 4630 – فعال کردن ردیابی اطلاعات مربوط به `OLE Automation`
4630
یک Trace Flag نامستند که ردیابی اطلاعات مربوط به `OLE Automation` را فعال میکند. این برای عیبیابی مشکلات مربوط به استفاده از رویههای سیستمی `sp_OA*` مفید است.
Trace Flag 4631 – فعال کردن ردیابی خطاهای مربوط به `OLE Automation`
4631
این Trace Flag نامستند، ردیابی خطاهای مربوط به `OLE Automation` را فعال میکند. این برای تشخیص و حل مشکلات مربوط به استفاده از اشیاء `OLE` در SQL Server ضروری است.
Trace Flag 4632 – فعال کردن ردیابی اطلاعات مربوط به `SQL Mail (MAPI)`
4632
یک Trace Flag نامستند که ردیابی اطلاعات مربوط به SQL Mail با استفاده از پروتکل `MAPI` را فعال میکند. این برای عیبیابی مشکلات خاص `MAPI` در SQL Mail مفید است.
Trace Flag 4635 – فعال کردن ردیابی اطلاعات مربوط به `msdb`
4635
این Trace Flag نامستند، ردیابی اطلاعات مربوط به پایگاه داده `msdb` را فعال میکند. این برای عیبیابی مشکلات مربوط به SQL Agent، SQL Mail و سایر قابلیتهایی که از `msdb` استفاده میکنند، مفید است.
Trace Flag 4636 – فعال کردن ردیابی خطاهای مربوط به `msdb`
4636
یک Trace Flag نامستند که ردیابی خطاهای مربوط به پایگاه داده `msdb` را فعال میکند. این برای تشخیص و حل مشکلات مربوط به `msdb` و قابلیتهای وابسته به آن ضروری است.
Trace Flag 4637 – فعال کردن ردیابی جزئیات `msdb`
4637
این Trace Flag نامستند، ردیابی جزئیات بیشتری را برای پایگاه داده `msdb` فعال میکند. این برای عیبیابی عمیقتر مشکلات `msdb` مفید است.
Trace Flag 6601 – تغییر رفتار `BULK INSERT` برای `IDENTITY`
6601
یک Trace Flag نامستند که رفتار `BULK INSERT` را در مورد ستونهای `IDENTITY` تغییر میدهد. این ممکن است در سناریوهایی که نیاز به مدیریت خاص مقادیر `IDENTITY` در زمان `BULK INSERT` دارید، مفید باشد.
Trace Flag 6602 – فعال کردن ردیابی اطلاعات مربوط به `FREETEXT` و `CONTAINS`
6602
این Trace Flag نامستند، ردیابی اطلاعات مربوط به جستجوهای Full-Text (`FREETEXT` و `CONTAINS`) را فعال میکند. این برای عیبیابی و بهینهسازی جستجوهای Full-Text در SQL Server مفید است.
Trace Flag 6603 – فعال کردن ردیابی خطاهای مربوط به Full-Text Search
6603
یک Trace Flag نامستند که ردیابی خطاهای مربوط به Full-Text Search را فعال میکند. این برای تشخیص و حل مشکلات مربوط به این قابلیت جستجو ضروری است.
Trace Flag 6604 – فعال کردن ردیابی جزئیات Full-Text Search
6604
این Trace Flag نامستند، ردیابی جزئیات بیشتری را برای Full-Text Search فعال میکند. این برای عیبیابی عمیقتر مشکلات Full-Text Search مفید است.
Trace Flag 6701 – فعال کردن ردیابی اطلاعات مربوط به `Distributed Transactions`
6701
یک Trace Flag نامستند که ردیابی اطلاعات مربوط به تراکنشهای توزیع شده (Distributed Transactions) را فعال میکند. این برای عیبیابی و نظارت بر تراکنشهایی که چندین منبع داده را درگیر میکنند، مفید است.
Trace Flag 6703 – فعال کردن ردیابی خطاهای `Distributed Transactions`
6703
این Trace Flag نامستند، ردیابی خطاهای مربوط به تراکنشهای توزیع شده را فعال میکند. این برای تشخیص و حل مشکلات مربوط به شکست تراکنشهای توزیع شده ضروری است.
Trace Flag 6704 – فعال کردن ردیابی جزئیات `Distributed Transactions`
6704
یک Trace Flag نامستند که ردیابی جزئیات بیشتری را برای تراکنشهای توزیع شده فعال میکند. این برای عیبیابی عمیقتر مشکلات تراکنشهای توزیع شده مفید است.
Trace Flag 7601 – فعال کردن ردیابی اطلاعات مربوط به Replication
7601
این Trace Flag نامستند، ردیابی اطلاعات مربوط به Replication را فعال میکند. این برای نظارت بر فرآیندهای Replication و عیبیابی مشکلات مربوط به همگامسازی دادهها بین سرورها مفید است.
Trace Flag 7602 – فعال کردن ردیابی خطاهای مربوط به Replication
7602
یک Trace Flag نامستند که ردیابی خطاهای مربوط به Replication را فعال میکند. این برای تشخیص و حل مشکلات مربوط به Replication ضروری است.
Trace Flag 7603 – فعال کردن ردیابی جزئیات Replication
7603
این Trace Flag نامستند، ردیابی جزئیات بیشتری را برای Replication فعال میکند. این برای عیبیابی عمیقتر مشکلات Replication مفید است.
Trace Flag 7604 – فعال کردن ردیابی Replication Log Reader Agent
7604
یک Trace Flag نامستند که ردیابی اطلاعات مربوط به Log Reader Agent در Replication را فعال میکند. این برای عیبیابی مشکلات مربوط به خواندن لاگ ترنزکشن و انتقال تغییرات به Distributor مفید است.
Trace Flag 7605 – فعال کردن ردیابی Replication Snapshot Agent
7605
این Trace Flag نامستند، ردیابی اطلاعات مربوط به Snapshot Agent در Replication را فعال میکند. این برای عیبیابی مشکلات مربوط به ایجاد و اعمال Snapshot اولیه در Replication مفید است.
Trace Flag 7606 – فعال کردن ردیابی Replication Distribution Agent
7606
یک Trace Flag نامستند که ردیابی اطلاعات مربوط به Distribution Agent در Replication را فعال میکند. این برای عیبیابی مشکلات مربوط به توزیع تغییرات از Distributor به Subscribers مفید است.
Trace Flag 7607 – فعال کردن ردیابی Replication Merge Agent
7607
این Trace Flag نامستند، ردیابی اطلاعات مربوط به Merge Agent در Replication را فعال میکند. این برای عیبیابی مشکلات مربوط به همگامسازی و حل تعارضات در Merge Replication مفید است.
Trace Flag 8001 – فعال کردن ردیابی اطلاعات مربوط به SQL Native Client
8001
یک Trace Flag نامستند که ردیابی اطلاعات مربوط به SQL Native Client را فعال میکند. این برای عیبیابی مشکلات مربوط به اتصال برنامههای کاربردی به SQL Server از طریق Native Client مفید است.
Trace Flag 8003 – فعال کردن ردیابی خطاها در SQL Native Client
8003
این Trace Flag نامستند، ردیابی خطاهای مربوط به SQL Native Client را فعال میکند. این برای تشخیص و حل مشکلات مربوط به اتصال یا اجرای کوئریها از طریق Native Client ضروری است.
Trace Flag 8004 – فعال کردن ردیابی جزئیات SQL Native Client
8004
یک Trace Flag نامستند که ردیابی جزئیات بیشتری را برای SQL Native Client فعال میکند. این برای عیبیابی عمیقتر مشکلات SQL Native Client مفید است.