Αρκετές φορές σαν consultant βρίσκεσαι σε περιβάλλοντα που βλέπεις για πρώτη φορά και προσπαθείς με την εκτέλεση διαφόρων queries να δεις τις ρυθμίσεις τόσο σε επίπεδο server όσο και σε επίπεδο database.
Πρόσφατα σε ένα τέτοιο περιβάλλον ρωτήθηκα αν μια συγκεκριμένη database μπορούμε να την βάλουμε σε κατώτερη έκδοση SQL Server καθώς θέλανε να την εγκαταστήσουν σε ένα υποκατάστημα και δεν ήθελαν να αγοράσουν Enterprise edition του SQL Server.
Την συγκεκριμένη database πρώτη φορά την έβλεπα και δεν υπήρχε κάποιος μέσα στην εταιρία να μου πει περισσότερα για αυτή καθώς ήταν από ISV. Για να απαντήσεις με ασφάλεια στο ερώτημα αυτό θα πρέπει να δεις αν στην συγκεκριμένη βάση έχουν ενεργοποιηθεί features που είναι στην enterprise έκδοση που είχε ο συγκεκριμένος πελάτης.
Γενικότερα θα έλεγα θα πρέπει να δεις αν έχουν ενεργοποιηθεί χαρακτηριστικά της έκδοσης που έχει ο πελάτης και δεν υπάρχουν στην χαμηλότερη έκδοση που θέλει πάει.
Για την απάντηση στο παραπάνω ερώτημα μπορείτε να εκτελέσετε την DMV sys.dm_db_persisted_sku_features στην συγκεκριμένη database και αν δεν σας βγάλει result τότε μπορείτε με ασφάλεια να πάτε στην αμέσως χαμηλότερη έκδοση.
select *
from sys.dm_db_persisted_sku_features
Η συγκεκριμένη DMV βγάζει αποτέλεσμα όταν στην συγκεκριμένη database έχουν ενεργοποιηθεί χαρακτηριστικά αυτής που δεν υπάρχουν στην κατώτερη της έκδοση.
Για παράδειγμα αν είσαι σε Enterprise edition δυνητικά μπορεί να σου βγάλει τα χαρακτηριστικά αυτής όπως compression, partitioning, transparent data encryption, change data capture, column store indexes κλπ.
/*antonch*/