Με οποιαδήποτε ενεργή βάση δεδομένων, οι απαιτήσεις αποθήκευσης δίσκων αυξάνονται με την πάροδο του χρόνου. Ενώ μπορείτε εύκολα να δείτε το χώρο στο δίσκο που χρησιμοποιείται από μια ολόκληρη βάση δεδομένων είτε κοιτάξτε στη σελίδα "Αρχεία" των ιδιοτήτων της βάσης δεδομένων στο SQL Management Studio ή απλά προβάλλοντας τα υποκείμενα αρχεία στην Εξερεύνηση των Windows, τι γίνεται αν θέλετε να σκάψετε λίγο πιο βαθιά και να δείτε μέρη που αποτελούν το άθροισμα του συνόλου;

Για να δείτε αυτές τις πληροφορίες, πρέπει να δείτε το μέγεθος των μεμονωμένων πινάκων. Ευτυχώς, ο SQL Server έχει μια ενσωματωμένη αποθηκευμένη διαδικασία, sp_SpaceUsed, η οποία εμφανίζει τα στατιστικά στοιχεία αποθήκευσης μεμονωμένων πινάκων. Αξιοποιώντας αυτήν την αποθηκευμένη διαδικασία, δημιουργήσαμε μια δέσμη ενεργειών δέσμης που σας επιτρέπει να δημιουργήσετε εύκολα μια λίστα κάθε πίνακα σε μια βάση δεδομένων και να δείτε τα στατιστικά στοιχεία αποθήκευσης.

Όταν εκτελείται το σενάριο, οι ακόλουθες πληροφορίες για κάθε πίνακα στη βάση δεδομένων παρατίθενται σε μορφή πίνακα:


  • Όνομα πίνακα βάσης δεδομένων Αριθμός γραμμών στον πίνακα Συνολικός χώρος δίσκου που έχει εκχωρηθεί σε αυτόν τον πίνακα από SQL Ποσότητα χώρου στο δίσκο που χρησιμοποιείται για αποθήκευση δεδομένων Ποσότητα χώρου στο δίσκο που χρησιμοποιείται για εσωτερικά ευρετήρια SQL

Χρησιμοποιώντας το σενάριο

Το σενάριο δέσμης DBSize είναι συμβατό με SQL 2005 και νεότερη έκδοση και πρέπει να εκτελείται σε ένα μηχάνημα που έχει εγκατεστημένο το εργαλείο SQLCMD (εγκατεστημένο ως μέρος της εγκατάστασης του SQL Server). Συνιστάται να αποθέσετε αυτό το σενάριο σε μια θέση που έχει οριστεί στη μεταβλητή PATH των Windows (π.χ. C: Windows), ώστε να μπορεί εύκολα να κληθεί όπως οποιαδήποτε άλλη εφαρμογή από τη γραμμή εντολών.

Για να δείτε τις πληροφορίες βοήθειας, απλώς εισαγάγετε:


DBSize /?
εικόνα

Παραδείγματα

Για να εκτελέσετε μια αναφορά για το "MyDB" στην προεπιλεγμένη παρουσία και να κατευθύνετε την έξοδο στο "MyDB Table Size.txt" στην επιφάνεια εργασίας:


DBSize MyDB> "% UserProfile% DesktopMyDB Table Size.txt"

Για να εκτελέσετε μια αναφορά για το "MyDB" στην ονομαζόμενη παρουσία "Special" χρησιμοποιώντας το χρήστη "sa" με κωδικό πρόσβασης "123456":


DBSize MyDB /S:.Special / U: sa / P: 123456

Πραγματοποιήστε λήψη της δέσμης ενεργειών δέσμης μεγέθους πίνακα βάσης δεδομένων από το SysadminGeek.com