Partager via


Initialisation instantanée de fichier de base de données

Les fichiers de données et de journaux sont initialisés pour remplacer toutes les données existantes laissées sur le disque à partir de fichiers précédemment supprimés. Les fichiers de données et de journaux sont d’abord initialisés en remplissant les fichiers avec des zéros lorsque vous effectuez l’une des opérations suivantes :

  • Créez une base de données.

  • Ajoutez des fichiers, des journaux ou des données à une base de données existante.

  • Augmentez la taille d’un fichier existant (y compris les opérations de croissance automatique).

  • Restaurez une base de données ou un groupe de fichiers.

L'initialisation des fichiers entraîne ces opérations à prendre plus de temps. Toutefois, lorsque les données sont écrites dans les fichiers pour la première fois, le système d’exploitation n’a pas à remplir les fichiers avec zéros.

Initialisation instantanée de fichiers

Dans SQL Server, les fichiers de données peuvent être initialisés instantanément. Cela permet l’exécution rapide des opérations de fichier mentionnées précédemment. L’initialisation instantanée des fichiers récupère l’espace disque utilisé sans remplir cet espace avec des zéros. Au lieu de cela, le contenu du disque est remplacé lorsque de nouvelles données sont écrites dans les fichiers. Les fichiers journaux ne peuvent pas être initialisés instantanément.

Remarque

L’initialisation instantanée de fichiers est disponible uniquement sur MicrosoftWindows XP Professional ou Windows Server 2003 ou versions ultérieures.

L'initialisation instantanée de fichiers est disponible uniquement si le compte de service SQL Server (MSSQLSERVER) s'est vu attribuer SE_MANAGE_VOLUME_NAME. Les membres du groupe des administrateurs Windows ont ce droit et peuvent l'accorder à d'autres utilisateurs en les ajoutant à la stratégie de sécurité Effectuer des tâches de maintenance en volume. Pour plus d’informations sur l’attribution de droits utilisateur, consultez la documentation Windows.

L’initialisation instantanée des fichiers n’est pas disponible lorsque TDE est activé.

Pour accorder à un compte l’autorisation Perform volume maintenance tasks :

  1. Sur l’ordinateur sur lequel le fichier de sauvegarde sera créé, ouvrez l’application Local Security Policy (secpol.msc).

  2. Dans le volet gauche, développez Stratégies locales, puis cliquez sur Attribution des droits utilisateur.

  3. Dans le volet droit, double-cliquez sur Effectuer des tâches de maintenance de volume.

  4. Cliquez sur Ajouter un utilisateur ou un groupe et ajoutez tous les comptes d’utilisateur utilisés pour les sauvegardes.

  5. Cliquez sur Appliquer, puis fermez toutes les Local Security Policy boîtes de dialogue.

Considérations relatives à la sécurité

Étant donné que le contenu du disque supprimé n’est remplacé que lorsque de nouvelles données sont écrites dans les fichiers, le contenu supprimé peut être accessible par un principal non autorisé. Bien que le fichier de base de données soit attaché à l’instance de SQL Server, cette menace de divulgation d’informations est réduite par la liste de contrôle d’accès discrétionnaire (DACL) sur le fichier. Cette DACL autorise l’accès aux fichiers uniquement au compte de service SQL Server et à l’administrateur local. Toutefois, lorsque le fichier est détaché, il est accessible par un utilisateur ou un service qui n’a pas SE_MANAGE_VOLUME_NAME. Une menace similaire existe lorsque la base de données est sauvegardée. Le contenu supprimé peut être disponible pour un utilisateur ou un service non autorisé si le fichier de sauvegarde n’est pas protégé par une liste DACL appropriée.

Si le risque de divulgation de contenu supprimé est un problème, vous devez effectuer l’une ou l’autre des opérations suivantes :

  • Veillez toujours à ce que les fichiers de données détachés et les fichiers de sauvegarde aient des DACL restrictives.

  • Désactivez l’initialisation instantanée des fichiers pour l’instance de SQL Server en révoquant SE_MANAGE_VOLUME_NAME à partir du compte de service SQL Server.

Remarque

La désactivation de l’initialisation instantanée des fichiers affecte uniquement les fichiers créés ou augmentés après la révocation du droit de l’utilisateur.

Voir aussi

CREATE DATABASE (SQL Server Transact-SQL)