Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

Έλεγχος της κατάστασης του SQL Server μέσα από τη C#

Îåêßíçóå áðü ôï ìÝëïò nickCole. Τελευταία δημοσίευση από το μέλος nickCole στις 13-03-2006, 13:18. Υπάρχουν 5 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  09-03-2006, 10:56 10496

    Έλεγχος της κατάστασης του SQL Server μέσα από τη C#

    Σε εφαρμογή που αναπτύσσω βρέθηκα αντιμέτωπος με ένα αρκετά ενδιαφέρον πρόβλημα.Θα ήθελα να ελέγξω από τον client αν ο sql server από τον οποίο ανακτώ δεδομένα είναι running, stopped κλπ. Δόκίμασα διάφορους τρόπους (π.χ. να κάνω query για να δω αν θα πάρω αποτελέσματα αλλά η λύση αυτή δεν δούλεψε σωστά).

    Πώς μπορώ μέσα από τη C# να ελέγξω αν o απομακρυσμένος SQL Server 2000(που βρίσκεται στον server της εφαρμογής) είναι running ή stopped ή paused? Μήπως κοιτώντας κάποια port? Και τι γίνεται αν στον Server τρέχουν περισσότερα από ένα instances του Sql server?

    Ευχαριστώ

    nick Cole

     

  •  09-03-2006, 20:39 10528 σε απάντηση της 10496

    Απ: Έλεγχος της κατάστασης του SQL Server μέσα από τη C#

    Ισως με WMI κλήσεις ? να δέις τι services τρέχουν στο Server , αυτό προυποθέτει ανάλογα security settings στον χρήστη με τον οποίο θα κάνεις την κλήση.

    Ενα καλό command εργαλείο το οποίο είναι διαθέσιμο σε XP, Win2003 είναι το SC

    π.χ sc \\myserver query "Mssqlserver"

    μπορείς να κάνεις Stop Start η και ακόμη να διαγράψεις ένα service.



  •  10-03-2006, 00:47 10538 σε απάντηση της 10496

    Απ: Έλεγχος της κατάστασης του SQL Server μέσα από τη C#

    Μπορείς να κάνεις ενα απλό query στην βάση και να δεις ενα έχεις reply.. Αν κάνει timeout σημαίνει οτι δεν τρέχει..Απορώ γιατι δεν σου δούλεψε σωστά..
    Καλό θα ήτανε να το κάνεις με ενα timer για να μην έχεις overhead σε κάθε query.Και με WMI γίνεται όπως είπε ο συνάδελφος, απλά δεν μπορώ να καταλάβω αν θέλεις απλά να
    πάρεις service state ή να δεις αν ειναι "ζωντανός" o server..
    Αν υπάρχουν διαφορετικά instance μπορείς να τα αναγνωρίσεις με το instance name τους πχ (local)\INSTANCE1, (local)\INSTANCE2 κλπ.

    Παναγιώτης Κεφαλίδης

    "Για να επιτύχεις, θα πρέπει το πάθος σου για την επιτυχία να είναι μεγαλύτερο απο τον φόβο σου για την αποτυχία"

    Οι απαντήσεις παρέχονται για συγκεκριμένες ερωτήσεις και χωρίς καμιά εγγύηση. Παρακαλώ διαβάστε τους όρους χρήσης.
  •  10-03-2006, 08:15 10539 σε απάντηση της 10528

    Απ: Έλεγχος της κατάστασης του SQL Server μέσα από τη C#

    Μπορείς να βρεις την κατάσταση του SQL Server και πολλές άλλες πληροφορίες μέσω του SQL-DMO (SQL Data Management Objects) αν είσαι σε SQL Server 2000 ή του SMO (SQL Server Management Objects) σε SQL Server 2005. To DMO είναι COM component οπότε το χρησιμοποιείς μέσω Interop, ενώ το SMO είναι .NET assembly.

    Στον SQL Server 2000 χρησιμοποιείς το SQLServer.Status property για να δεις σε τί κατάσταση είναι ο SQL Server. Σε SMO χρησιμοποιείς την Microsoft.SqlServer.Management.Smo.Wmi.Service.ServiceState.




    Παναγιώτης Καναβός, Freelancer
    Twitter: http://www.twitter.com/pkanavos
  •  10-03-2006, 17:34 10562 σε απάντηση της 10496

    Απ: Έλεγχος της κατάστασης του SQL Server μέσα από τη C#

    Thanx παναγιώτη.. Nice info..! Big Smile [:D]
    Παναγιώτης Κεφαλίδης

    "Για να επιτύχεις, θα πρέπει το πάθος σου για την επιτυχία να είναι μεγαλύτερο απο τον φόβο σου για την αποτυχία"

    Οι απαντήσεις παρέχονται για συγκεκριμένες ερωτήσεις και χωρίς καμιά εγγύηση. Παρακαλώ διαβάστε τους όρους χρήσης.
  •  13-03-2006, 13:18 10601 σε απάντηση της 10496

    Απ: Έλεγχος της κατάστασης του SQL Server μέσα από τη C#

    Σας Ευχαριστώ Πολύ,



    Nick Cole
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems