Décrire les options de configuration délimitées à la base de données

Effectué

SQL Server a toujours eu des options de configuration qui étaient définies au niveau de la base de données. Par exemple, le mode de récupération a toujours été un paramètre de base de données, mais à mesure que des fonctionnalités plus complexes ont été introduites dans la base de données, d’autres options ont été ajoutées. La plupart de ces options sont liées au niveau de compatibilité de la base de données, qui est elle-même une option de configuration au niveau de la base de données. Les options de configuration de base de données se divisent en deux groupes, avec une différence mineure :

  • Options configurées par la syntaxe ALTER DATABASE SCOPED CONFIGURATION dans T-SQL

  • Options configurées par la syntaxe ALTER DATABASE dans T-SQL

Les différentes façons de définir ces options n’ont aucune importance. Les options définies avec ALTER DATABASE sont les suivantes :

  • Mode de récupération de base de données : que la base de données soit en mode de récupération complète ou simple

  • Option de réglage automatique : activer ou forcer le dernier bon plan

  • Création et mise à jour automatiques des statistiques : permet à la base de données de créer et de mettre à jour les statistiques, et autorise l’option des mises à jour asynchrones des statistiques

  • Options du Magasin des requêtes : les options du Magasin des requêtes sont configurées ici

  • Isolement de capture instantanée : vous pouvez configurer l’isolement de capture instantanée et l’isolement de capture instantanée de lecture validée

Les paramètres ci-dessus constituent une partie des options configurables.

De nombreuses options précédemment configurées sur le serveur peuvent désormais être configurées au niveau de la base de données. Parmi elles, se trouvent :

  • Degré maximal de parallélisme : permet à une base de données de configurer son propre paramètre MaxDOP et de remplacer le paramètre du serveur.

  • Estimation de la cardinalité héritée : permet à la base de données d’utiliser l’estimateur de cardinalité précédent. Certaines requêtes peuvent connaître une dégradation des performances avec l’estimateur de cardinalité plus récent, et peuvent donc en tirer parti. Notez que si vous utilisez cette option avec un niveau de compatibilité plus récent, vous pouvez quand même bénéficier des avantages du traitement intelligent des requêtes sous le niveau de compatibilité 140 ou 150.

  • Statistiques du dernier plan de requête : vous permet de capturer les valeurs du dernier plan d’exécution effectif d’une requête. Cette fonctionnalité est active uniquement sous le niveau de compatibilité 150.

  • Optimiser pour les charges de travail ad hoc : utilise l’optimiseur pour stocker un plan de requête stub dans le cache du plan. Cela peut permettre de réduire la taille du cache du plan pour les charges de travail qui ont un grand nombre de requêtes à usage unique.

Niveau de compatibilité de la base de données

Chaque base de données a son propre niveau de compatibilité, qui contrôle le comportement de l’optimiseur de requête pour cette base de données.

Vous pouvez gérer ce paramètre lors de la mise à niveau de SQL Server pour vous assurer que vos requêtes ont des plans d’exécution similaires à l’ancienne version.

Microsoft continuera de prendre en charge l’exécution sur un niveau de compatibilité plus ancien pendant une période prolongée. Dans la mesure du possible, vous devez mettre à niveau vers un niveau de compatibilité plus récent, car la plupart des nouvelles fonctionnalités dans le traitement intelligent des requêtes sont uniquement disponibles dans le niveau de compatibilité 140 ou 150.