Vérifier les paramètres de croissance automatique de la base de données - AWS Directives prescriptives

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Vérifier les paramètres de croissance automatique de la base de données

Toute transaction nécessitant l'augmentation des données ou du fichier journal inclut le temps nécessaire à l'opération de croissance du fichier. Le fichier augmente selon la taille d'incrément définie par l'option FILEGROWTH. Vous pouvez rechercher des événements de croissance de fichiers dans les traces du profileur SQL Server. Si la croissance du fichier prend du temps, vous pouvez rencontrer des types d'attente tels queASYNC_IO_COMPLETION, ce qui se produit lorsque le traitement des données est très lent. Ces types d'attente affectent non seulement les performances, mais peuvent également entraîner des délais d'attente pour les transactions. Si cette transaction bloque les ressources recherchées par d'autres transactions, le délai d'attente entraînera de graves problèmes de blocage du serveur.

C'est pourquoi nous vous recommandons de configurer très soigneusement les paramètres de croissance automatique. Gardez également à l'esprit que :

  • La croissance des fichiers est l'une des opérations les plus coûteuses de SQL Server.

  • Une croissance automatique fréquente en petits morceaux peut entraîner une fragmentation du disque.

  • La croissance automatique fréquente des fichiers journaux génère un grand nombre de fichiers journaux virtuels (VLF) et affecte les performances, comme indiqué dans la section précédente.

Toutes ces raisons peuvent ralentir le démarrage de la base de données et augmenter le temps de sauvegarde et de restauration.

Idéalement, vous devez pré-agrandir les fichiers de manière proactive, sur la base d'une surveillance régulière. Choisissez soigneusement entre définir la croissance automatique en pourcentage ou en tant que valeur statique (en Mo). En général, définir la croissance automatique à un huitième de la taille du fichier est un bon point de départ, mais ce n'est peut-être pas le bon choix. (Par exemple, ce pourcentage serait trop élevé si la taille de votre fichier de données est de plusieurs To.)

Dans la plupart des cas, une valeur de croissance automatique de 1 024 Mo fonctionne bien pour les fichiers de données de la plupart des grandes bases de données. Pour les fichiers journaux, 512 Mo constituent un bon point de départ. Pour les mesures d'urgence, nous vous recommandons vivement de définir la valeur de croissance automatique, mais de développer les fichiers manuellement pendant quelques mois en fonction des tendances passées.

Note

La définition de la croissance automatique doit être une mesure d'urgence. Vous devez donc la définir après avoir préalloué de l'espace de stockage à un fichier.

Vous pouvez modifier les paramètres de croissance automatique à l'aide de SQL Server Management Studio (SSMS) ou de Transact-SQL. L'illustration d'écran suivante montre les paramètres de croissance automatique dans SSMS.

Changing autogrowth settings

Lorsque vous utilisez l'option FILEGROWTH pour les données et les fichiers journaux, choisissez soigneusement entre la définition en pourcentage ou en tant que valeur statique (en Mo). La définition d'un pourcentage entraîne une augmentation constante de la croissance du fichier. Vous pouvez donc préférer utiliser une taille statique pour mieux contrôler le taux de croissance.

  • Dans les versions antérieures à SQL Server 2022 (16.x), les journaux de transactions ne peuvent pas utiliser l'initialisation instantanée des fichiers. Il est donc particulièrement important de prolonger la durée de croissance des journaux.

  • À partir de SQL Server 2022 (16.x, toutes les éditions), l'initialisation instantanée des fichiers peut profiter aux événements de croissance du journal des transactions jusqu'à 64 Mo. L'incrément de taille de croissance automatique par défaut pour les nouvelles bases de données est de 64 Mo. Les événements de croissance automatique du fichier journal des transactions d'une taille supérieure à 64 Mo ne peuvent pas bénéficier de l'initialisation instantanée des fichiers.