ابزارهای نظارت بر SQL Server میتوانند هر چیزی را از فعالیت CPU و دیسک ویندوز تا مسدود کردن، آمار انتظار، برنامههای پرس و جو و در دسترس بودن پایگاه داده ردیابی کنند. بنابراین ابزار مناسب به لایه SQL Server که واقعاً نیاز دارید نظارت کنید بستگی دارد، نه به اندازه لیست ویژگیهای آن.
این راهنما توضیح میدهد که تیمهای IT باید چه مواردی را نظارت کنند، کجا نظارت بر سرور ویندوز متوقف میشود و نظارت خاص SQL آغاز میشود، کدام ابزارهای داخلی مایکروسافت در دسترس هستند و چگونه یک رویکرد نظارتی مناسب را انتخاب کنیم.
چه چیزی نظارت بر SQL Server را شگفتانگیز میکند؟
نظارت بر سرورها، اصول اولیه:
Microsoft SQL Server بر روی زیرساخت سرور اجرا میشود، بنابراین عملکرد سیستم عامل مهم است استفاده بالای CPU، فشار حافظه یا ذخیرهسازی کند میتواند بر SQL Server تأثیر بگذارد حتی زمانی که هیچ مشکلی به طور ذاتی با موتور پایگاه داده وجود ندارد.
نیازهای نظارت خاص پایگاه داده برای سرورهای SQL:
با این حال، مشاهده واضح معیارهای ویندوز سرور لزوماً به معنای عملکرد خوب SQL Server نیست. کاربران ممکن است به دلیل مسدود شدن، برنامههای اجرایی ضعیف یا انتظارهای پرس و جو، تراکنشهای کندی را تجربه کنند در حالی که ماشین زیرین هنوز سالم به نظر میرسد.
چگونه مایکروسافت این را تقسیم میکند:
مایکروسافت این تمایز را در معماری نظارت خود منعکس میکند. ابزارهای ویندوز مانند Performance Monitor منابع سیستم را پوشش میدهند، در حالی که SQL Server امکانات خاص پایگاه داده شامل Query Store، Extended Events، Activity Monitor، لاگهای خطا و قابلیتهای نظارت Transact-SQL را فراهم میکند.
نظارت بر SQL Server بنابراین باید شامل چندین لایه مکمل باشد نه فقط یک مجموعه از معیارها.
ابزارهای نظارت بر SQL Server باید چه مواردی را پیگیری کنند؟
معیارهای دقیق مورد نیاز بستگی به این دارد که آیا تیمهای IT عمدتاً مسئول در دسترس بودن زیرساخت، مدیریت پایگاه داده یا عملکرد برنامه هستند. یک استراتژی نظارتی مفید از گسترده شروع میشود و در صورت نیاز به بار کاری، دیدگاه عمیقتری از SQL Server اضافه میکند.
1. سلامت سرور و زیرساخت
با منابع موجود برای میزبان SQL Server شروع کنید. CPU، حافظه فیزیکی، ظرفیت دیسک، فعالیت خواندن و نوشتن دیسک، استفاده از شبکه و فرآیندهای در حال اجرا زمینه زیرساختی را برای عملکرد پایگاه داده فراهم میکنند.
نکته مهم همبستگی است. زمانهای پاسخ SQL بالا همراه با تأخیر ذخیرهسازی نشاندهنده نیاز به تحقیق متفاوتی از پرسوجوهای کند است که در حالی که میزبان دارای ظرفیت کافی CPU، حافظه و I/O است، رخ میدهند.
نظارت بر میزبان همچنین به شناسایی مشکلاتی که بر روی SQL Server تأثیر میگذارد کمک میکند. یک سرور فیزیکی یا مجازی ممکن است برنامهها، خدمات یا کاربران از راه دور را میزبانی کند که فعالیت آنها برای همان منابع رقابت میکند.
2. سلامت نمونه و پایگاه داده SQL Server
لایه بعدی به داخل موتور پایگاه داده نگاه میکند.
مناطق مهم معمولاً شامل انتظارها، جلسات فعال، مسدودسازی، بنبستها، رشد فایل پایگاه داده، استفاده از لاگ تراکنش و فعالیت TempDB میشوند. مدیران همچنین ممکن است نیاز داشته باشند وضعیت پایگاه داده، اتصالات، رفتار حافظه و خدمات SQL Server را زیر نظر داشته باشند.
آمار انتظار به ویژه مفید هستند زیرا به شناسایی اینکه SQL Server برای چه کارهایی در حال انتظار است کمک میکنند و فقط نشان نمیدهند که سیستم کند است. مسدود شدن و قفلهای مرده دید بیشتری را فراهم میکنند و به شناسایی اینکه آیا تراکنشهای خاصی برای منابع رقابت میکنند، کمک میکنند.
پلتفرمهای نظارت بر پایگاه داده اختصاصی به طور قابل توجهی عمیقتر از نظارت بر میزبانها میروند. به عنوان مثال، IDERA SQL Diagnostic Manager نظارت بر انتظارها، زنجیرههای مسدودکننده، بنبستها، فشار TempDB، تأخیر I/O و رشد پایگاه داده را مستند میکند.
3. عملکرد پرس و جو و بار کاری
پس از اینکه یک مشکل به بار کاری پایگاه داده محلیسازی شد، معمولاً معیارهای سرور تجمیع شده کافی نیستند. مدیران باید تعیین کنند که کدام پرس و جوها منابع بیش از حدی مصرف میکنند و آیا رفتار آنها تغییر کرده است.
اطلاعات مفید در سطح پرس و جو میتواند شامل مدت زمان اجرا، مصرف CPU، خواندنهای منطقی و فیزیکی، مصرف حافظه، فراوانی اجرا، زمانهای انتظار و برنامههای اجرایی باشد.
ذخیرهسازی پرسوجوی مایکروسافت نمونه خوبی از نرمافزاری است که برای این منظور طراحی شده است. این نرمافزار پرسشها، برنامهها و آمار زمان اجرا را حفظ میکند تا مدیران بتوانند عملکرد را در طول زمان بررسی کرده و کاهشهای مرتبط با تغییرات برنامهریزی پرسش را شناسایی کنند. SQL Server 2017 و نسخههای بعدی میتوانند آمار انتظار را از طریق Query Store ضبط کنند.
این زمینه تاریخی مهم است زیرا بسیاری از مشکلات SQL Server متناوب هستند. دانستن اینکه CPU دیروز بعد از ظهر به 90٪ رسید مفید است. دانستن اینکه کدام پرس و جوها در همان لحظه رفتارشان تغییر کرد، اهرمهای بالقوه برای اقدام را شناسایی میکند.
4. دسترسپذیری، مشاغل و سلامت عملیاتی
عملکرد تنها یکی از جنبههای نظارت بر SQL Server است. شکستهای عملیاتی میتوانند بر در دسترس بودن و قابلیت بازیابی تأثیر بگذارند حتی زمانی که عملکرد بار کاری به نظر عادی میرسد.
بسته به محیط، مدیران ممکن است به دیدگاهی در مورد وظایف SQL Server Agent، پشتیبانگیریها، در دسترس بودن پایگاه داده و گروههای در دسترس بودن Always On نیاز داشته باشند. املاک بزرگتر یا حیاتی برای کسب و کار ممکن است به نظارت بر تکرار، ردیابی پیکربندی و پیشبینی ظرفیت نیز نیاز داشته باشند.
عمق مورد نیاز باید با اهمیت بار کاری مطابقت داشته باشد. یک پایگاه داده داخلی کوچک یا یک مجموعه SQL Server تولید خوشهای به معماریهای نظارتی بسیار متفاوتی نیاز دارند.
کدام ابزارهای نظارت بر SQL Server داخلی را میتوانید استفاده کنید؟
قبل از خرید یک پلتفرم اختصاصی، ارزش دارد که بفهمید چه چیزی مایکروسافت SQL سرور قبلاً ارائه شده است.
مجموعهای گسترده از ابزارهای بومی:
- نظارت بر فعالیت از بازرسی موردی پشتیبانی میکند
- Query Store اطلاعات تاریخی پرس و جو و برنامه را نگه میدارد
- رویدادهای گسترده، رویدادهای انتخاب شده موتور را ضبط میکند
- نمایشهای مدیریت پویا دادههای عملکرد داخلی را افشا میکنند
- گزارشهای خطای SQL Server به بررسی رویدادهای موتور پایگاه داده کمک میکنند.
- نظارت بر عملکرد ویندوز اطلاعات منابع سیستم عامل را اضافه میکند.
تشخیص عمیقتر اما پیچیدگی بیشتر:
این ابزارها میتوانند عمق تشخیصی قابل توجهی را فراهم کنند، به ویژه برای مدیران پایگاه داده با تجربه. آنها همچنین از معرفی یک ابزار دیگر جلوگیری میکنند. پلتفرم نظارت زمانی که عیبیابی گاه به گاه کافی است.
محدودیت آنها اغلب دسترسی به دادهها نیست بلکه راحتی عملیاتی است. یک تیم IT که چندین سرور را مدیریت میکند ممکن است بخواهد داشبوردهای متمرکز، تاریخچههای پایدار، هشداردهی آسانتر و همبستگی سریعتر به جای جمعآوری اطلاعات از چندین رابط SQL Server و Windows داشته باشد.
این جایی است که نظارت شخص ثالث جذابتر میشود.
چگونه ابزارهای نظارت بر SQL Server را انتخاب کنیم؟
با مشکل شروع کنید که ابزار قرار است آن را حل کند. این باید شما را از دست دادن هدف خود در یک چک لیست از بزرگترین تعداد معیارهای پشتیبانی شده نجات دهد.
1. عمق لازم برای دیدگاه
یک سوال مفید اولیه این است که آیا به نظارت بر زیرساخت، تشخیص موتور پایگاه داده یا تحلیل دقیق پرس و جو نیاز دارید.
| نیازمندی | رویکرد نظارت |
|---|---|
| CPU، حافظه، دیسک و در دسترس بودن سرور | نظارت بر سرور یا زیرساخت |
| عیبیابی گاهبهگاه SQL Server | ابزارهای داخلی Microsoft SQL Server |
| مسدود کردن، انتظارها، بنبستها و هشدارهای پایگاه داده | نظارت بر SQL Server اختصاصی |
| برنامههای پرس و جو و کاهش عملکرد | ذخیرهسازی پرسوجو یا نظارت پیشرفته SQL |
| املاک SQL چندین نمونه بزرگ | نظارت بر پایگاه داده متمرکز |
| SQL Server به همراه وابستگیهای کاربردی وسیعتر | زیرساخت یا مشاهدهپذیری کامل با نظارت خاص SQL ترکیب شده است |
این دستهها میتوانند همپوشانی داشته باشند. در بسیاری از محیطها، عملیترین رویکرد ترکیبی است نه یک محصول واحد.
۲. مطابقت هشدارها و تاریخچه با عملیات
نظارت زمانی بیشترین فایده را دارد که رفتار غیرعادی را قبل از اینکه کاربران مشکلی را گزارش کنند، برجسته کند.
به این نکته توجه کنید که آیا یک ابزار از هشدارهای آستانه، روندهای تاریخی و زمینه کافی برای بررسی بعدی رویداد پشتیبانی میکند یا خیر. پلتفرمهای تخصصی SQL ممکن است با پیوست کردن زنجیرههای مسدودکننده، نمودارهای بنبست یا اطلاعات پرس و جو به طور مستقیم به یک هشدار، فراتر بروند. به عنوان مثال، Redgate Monitor هشدارهای خاص SQL را برای رویدادهایی از جمله بنبستها، مشاغل ناموفق، پرس و جوهای مسدود شده و پرس و جوهای طولانی مستند میکند.
تنظیم مبناها نیز مهم است. یک مقدار که برای یک پایگاه داده غیرعادی است ممکن است برای پایگاه داده دیگری عادی باشد، بنابراین هشدارها باید رفتار و اهمیت تجاری بارهای کاری فردی را منعکس کنند.
3. مقیاس، استقرار و مدیریت را در نظر بگیرید
ابزاری که برای یک نمونه SQL Server مناسب است، ممکن است در بین دهها سرور دشوار شود.
توجه کنید که چند میزبان، نمونه و پایگاه داده نیاز به نظارت دارند، چگونه دادههای نظارتی جمعآوری و نگهداری میشوند و چگونه مدیران میتوانند به راحتی سیستمها را از یک کنسول مرکزی مقایسه کنند. بنابراین، مجوزدهی، تلاش برای استقرار، تولید گزارش و مدیریت هشدار باید به همراه عمق فنی ارزیابی شوند.
هدف جمعآوری هر معیار ممکن نیست. هدف جمعآوری اطلاعات مرتبط به اندازه کافی برای شناسایی رفتار غیرعادی و کوتاه کردن مسیر از علامت به علت است تا تکنسینهای IT شما بتوانند یک مشکل را حل کنند.
TSplus Server Monitoring در کجا قرار میگیرد؟
نظارت بر سرور TSplus به جنبه زیرساختی این مدل نظارت میپردازد. این امکان را فراهم میکند دید قابل مشاهده در زمان واقعی به فعالیتهای خواندن و نوشتن دیسک، CPU، حافظه، پهنای باند، فرآیندها و کاربران متصل، همراه با گزارشهای تاریخی و هشدارهای قابل تنظیم برای معیارهای سرور.
برای یک سرور ویندوز که Microsoft SQL Server را اجرا میکند، این قابلیت دید به تعیین اینکه آیا یک مشکل عملکرد پایگاه داده با فشار CPU، مصرف حافظه، فعالیت دیسک یا شرایط دیگری در سطح میزبان همزمان است، کمک خواهد کرد. گزارشگیری تاریخی همچنین زمینهای برای مسائل زیرساختی مکرر فراهم میکند.
TSplus Server Monitoring اما یک تحلیلگر عملکرد پایگاه داده SQL Server اختصاصی نیست. الزامات خاص SQL مانند تحلیل برنامه اجرایی، بررسی Query Store، زنجیرههای مسدودکننده، تحلیل بنبست یا آمار دقیق انتظار به ابزارهای SQL Server مایکروسافت یا یک محصول تخصصی نظارت بر پایگاه داده نیاز دارند.
برای بسیاری از تیمهای IT، این لایهها مکمل یکدیگر هستند. نظارت بر سرور TSplus میتواند نمایی ساده از سلامت سرور و مصرف منابع ارائه دهد، در حالی که ابزارهای بومی SQL Server دیدگاه عمیقتری از پایگاه داده را فراهم میکنند و کمک میکنند تا زمانی که یک حادثه به سمت موتور پایگاه داده یا یک بار کاری خاص اشاره میکند، شناسایی شود.
نتیجه
انتخاب از بین ابزارهای نظارت بر SQL Server با تصمیمگیری در مورد اینکه چه چیزی نیاز به دید دارد آغاز میشود. منابع سرور، سلامت موتور پایگاه داده و عملکرد پرس و جو نمایانگر لایههای مختلف یک سیستم هستند و هیچ معیار واحدی همه آنها را توضیح نمیدهد.
با سلامت زیرساخت شروع کنید، سپس نظارت خاص SQL را هر جا که بار کاری نیاز به تشخیص عمیقتری دارد، اضافه کنید. این رویکرد لایهای نظارت را عملی نگه میدارد در حالی که به تیمهای IT زمینه کافی برای تمایز بین مشکل سرور و مشکل پایگاه داده یا پرس و جو را میدهد.
TSplus دسترسی از راه دور آزمایشی رایگان
جایگزین نهایی Citrix/RDS برای دسترسی به دسکتاپ/برنامه. ایمن، مقرون به صرفه، محلی/ابری
برخی از سوالات متداول
ابزار نظارت بر SQL Server چیست؟
یک ابزار نظارت بر SQL Server سلامت، عملکرد یا در دسترس بودن محیطهای Microsoft SQL Server را پیگیری میکند. بسته به دامنه آن، ممکن است منابع میزبان، پایگاههای داده، زمانهای انتظار، مسدودسازی، پرس و جوها، کارها، پشتیبانگیریها یا پیکربندیهای در دسترس بودن را نظارت کند.
چه معیارهای SQL Server را باید نظارت کنم؟
معیارهای اصلی بسته به بار کاری معمولاً شامل CPU، حافظه و ذخیرهسازی است. در کنار آن، نشانگرهای خاص SQL مواردی مانند انتظارها، مسدود شدن، بنبستها، رشد پایگاه داده، لاگهای تراکنش، فعالیت TempDB، مدت زمان پرس و جو و وضعیت شغل را نشان میدهند.
آیا نظارت بر سرور ویندوز میتواند مشکلات SQL Server را شناسایی کند؟
نظارت بر سرور ویندوز میتواند مشکلات زیرساختی که بر SQL Server تأثیر میگذارد، از جمله فشار CPU، حافظه و دیسک را شناسایی کند. اما به تنهایی نمیتواند مشکلات موتور پایگاه داده مانند پسرفتهای طرح پرس و جو، زنجیرههای مسدودکننده یا انتظارهای خاص SQL را توضیح دهد.
آیا SQL Server ابزارهای نظارتی خود را شامل میشود؟
بله. Microsoft SQL Server شامل ابزارها و امکاناتی مانند Query Store، Extended Events، Activity Monitor، Dynamic Management Views، لاگهای خطا و توابع عملکرد Transact-SQL است. مناسب بودن آنها به رویداد یا بار کاری که در حال بررسی است بستگی دارد.
آیا به نرمافزار نظارت بر SQL Server اختصاصی نیاز دارم؟
لزومی ندارد. ابزارهای داخلی ممکن است برای محیطهای کوچک یا عیبیابیهای گاه به گاه کافی باشند. همراه با نظارت بر سرور TSplus برای مقاصد عمومی، مانیتور داخلی خود SQL Server مایکروسافت چیز زیادی برای حسادت به محصولات نظارت شخص ثالث ندارد. نظارت اختصاصی زمانی مفیدتر میشود که تیمها به دید مرکزی، هشدارهای مداوم، تاریخچه طولانیمدت یا تشخیص سریعتر در چندین نمونه SQL Server نیاز داشته باشند.