أفضل طريقة لمعرفة ما إذا كانت عمليات SQL Server 2000 تعمل؟

StackOverflow https://stackoverflow.com/questions/2540110

  •  23-09-2019
  •  | 
  •  

سؤال

لدينا جهاز SQL Server 2000 قديم حيث تعمل مجموعة من الوظائف بين عشية وضحاها. في بعض الأحيان ، بعد إجراء صيانة الخادم وإعادة تشغيل الجهاز ، لا تتوصل بعض مكونات SQL إلى نظام التشغيل (على الرغم من أنها تم تكوينها للقيام بذلك). لذلك قبل أن يتم تشغيل وظائفنا الليلية ، أود (من جهاز بعيد) تشغيل بعض الاختبارات لمعرفة ما إذا كانت SQL Server و SQL Server وخدمة SQL Server OLAP تعمل. لقد وجدت بعض الأشياء التي يبدو أنها يجب أن تعمل ، لكنني أتساءل عما إذا كان يمكن للخبراء في هذا المجتمع التعليق على جودة كل نهج واعتماده. يمكنني ترميز هذا التطبيق كملف .vbs يتم تشغيله عبر المهام المجدولة Windows أو إنشاء خدمة C# Windows.

المرشح 1:قم بتنفيذ استعلام ضد Master..sysprocesses وابحث في عمود برنامج البرنامج للعمليات المعنية التي أتوقع العثور عليها.

المرشح 2:قم بتنفيذ استعلام ضد Master..xpcmd_shell مثل ذلك:

exec master..xp_cmdshell 'sc \\hostname query SQLServerAgent'

ثم ابحث عن "الحالة: 4 تشغيل" في النتائج

المرشح 3:باستخدام إطار .NET ، ابحث عن العملية مثل هذه:تحقق مما إذا كانت العملية تعمل على نظام بعيد باستخدام C#

هذا شيء لا يحتاج إلى تشغيله إلا مرة واحدة يوميًا وسيقوم بإرسال تنبيه بريد إلكتروني إذا لم تكن أي من العمليات التي يجب أن تعمل.

هل كانت مفيدة؟

المحلول

للراغبين في الحل الذي انتهى بي الأمر ... اقرأ.

انتهى بي الأمر مع المرشح 1 بسبب سهولة التنمية وألفة التعلم لدي مع خادم C#/ADO.NET/SQL. لقد قمت بإنشاء خدمة C# Windows للاتصال بـ PROC المخزنة ضمن حدث TIMER_ELAPSED (أشياء قياسية جميلة).

إليكم شجاعة Proc المخزنة التي تتصل بها الخدمة:

SELECT
    RTRIM(LTRIM(hostname)) AS hostname,
    RTRIM(LTRIM(program_name)) AS program_name,
    RTRIM(LTRIM(nt_domain)) AS nt_domain,
    RTRIM(LTRIM(nt_username)) AS nt_username,
    RTRIM(LTRIM(loginame)) AS loginame
FROM
    master..sysprocesses
WHERE
    hostname = 'CSSMCDBSW03'
AND
    program_name IN ('Microsoft SQL Server Analysis Services', 'SQLAgent - Generic Refresher')
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top