ابزارهای نظارت بر 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 اختصاصی |
| برنامههای پرس و جو و کاهش عملکرد | ذخیرهسازی پرسوجو یا نظارت پیشرفته SQL |
| املاک SQL چندین نمونه بزرگ | نظارت بر پایگاه داده متمرکز |
| SQL Server به همراه وابستگیهای کاربردی وسیعتر | زیرساخت یا مشاهدهپذیری کامل با نظارت خاص بر SQL ترکیب شده است |
این دستهها میتوانند همپوشانی داشته باشند. در بسیاری از محیطها، عملیترین رویکرد ترکیبی است نه یک محصول واحد.
۲. مطابقت هشدارها و تاریخچه با عملیات
نظارت زمانی بیشترین فایده را دارد که رفتارهای غیرعادی را قبل از اینکه کاربران مشکلی را گزارش کنند، برجسته کند.
به این نکته توجه کنید که آیا یک ابزار از هشدارهای آستانه، روندهای تاریخی و زمینه کافی برای بررسی بعدی رویداد پشتیبانی میکند یا خیر. پلتفرمهای تخصصی SQL ممکن است با پیوست کردن زنجیرههای مسدودکننده، نمودارهای بنبست یا اطلاعات پرس و جو به طور مستقیم به یک هشدار، فراتر بروند. به عنوان مثال، Redgate Monitor هشدارهای خاص SQL را برای رویدادهایی از جمله بنبستها، مشاغل ناموفق، پرس و جوهای مسدود شده و پرس و جوهای طولانی مستند میکند.
تنظیم مبناها نیز مهم است. یک مقدار که برای یک پایگاه داده غیرعادی است ممکن است برای پایگاه داده دیگری عادی باشد، بنابراین هشدارها باید رفتار و اهمیت تجاری بارهای کاری فردی را منعکس کنند.
۳. مقیاس، استقرار و مدیریت را در نظر بگیرید
ابزاری که برای یک نمونه SQL Server مناسب است، ممکن است در بین دهها سرور دشوار شود.
توجه کنید که چند میزبان، نمونه و پایگاه داده نیاز به نظارت دارند، چگونه دادههای نظارتی جمعآوری و نگهداری میشوند و چگونه مدیران میتوانند به راحتی سیستمها را از یک کنسول مرکزی مقایسه کنند. بنابراین، مجوزدهی، تلاش برای استقرار، تولید گزارش و مدیریت هشدار باید به همراه عمق فنی ارزیابی شوند.
هدف جمعآوری هر معیار ممکن نیست. هدف جمعآوری اطلاعات مرتبط به اندازه کافی برای شناسایی رفتار غیرعادی و کوتاه کردن مسیر از علامت به علت است تا تکنسینهای IT شما بتوانند یک مشکل را حل کنند.
TSplus Server Monitoring در کجا قرار میگیرد؟
TSplus Server Monitoring به جنبه زیرساختی این مدل نظارت میپردازد. این امکان را فراهم میکند دید قابل مشاهده در زمان واقعی به فعالیتهای خواندن و نوشتن دیسک، پهنای باند، پردازشها و کاربران متصل، به همراه گزارشهای تاریخی و هشدارهای قابل تنظیم برای معیارهای سرور.
برای یک سرور ویندوز که 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 را شناسایی کند؟
نظارت بر Windows 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 نیاز داشته باشند.