Groupes de fichiers et fichiers de base de donnéesDatabase Files and Filegroups

Cette rubrique s’applique à : OuiSQL Serveraucunbase de données SQL AzureaucunAzure SQL Data Warehouse aucun Parallel Data WarehouseTHIS TOPIC APPLIES TO: yesSQL ServernoAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse

Chaque base de données SQL ServerSQL Server possède au moins deux fichiers de système d'exploitation : un fichier de données et un fichier journal.At a minimum, every SQL ServerSQL Server database has two operating system files: a data file and a log file. Les fichiers de données contiennent des données et des objets tels que des tables, des index, des procédures stockées et des vues.Data files contain data and objects such as tables, indexes, stored procedures, and views. Les fichiers journaux contiennent les informations nécessaires pour récupérer toutes les transactions de la base de données.Log files contain the information that is required to recover all transactions in the database. Les fichiers de données peuvent être regroupés dans des groupes de fichiers à des fins d'allocation et d'administration.Data files can be grouped together in filegroups for allocation and administration purposes.

Fichiers de base de donnéesDatabase Files

SQL ServerSQL Server Les bases de données possèdent trois types de fichiers, comme indiqué dans le tableau suivant. databases have three types of files, as shown in the following table.

FichierFile DescriptionDescription
PrincipalPrimary Le fichier de données primaire contient les informations de démarrage de la base de données, et il pointe vers les autres fichiers de la base de données.The primary data file contains the startup information for the database and points to the other files in the database. Les objets et les données utilisateur peuvent être stockés dans ce fichier ou dans des fichiers de données secondaires.User data and objects can be stored in this file or in secondary data files. Chaque base de données comprend un fichier de données primaire.Every database has one primary data file. L'extension de fichier recommandée est .mdf.The recommended file name extension for primary data files is .mdf.
SecondarySecondary Les fichiers de données secondaires sont facultatifs, définis par l'utilisateur, et ils stockent les données utilisateur.Secondary data files are optional, are user-defined, and store user data. Les fichiers secondaires peuvent être utilisés pour répartir des données sur plusieurs disques en plaçant chaque fichier sur un lecteur de disque distinct.Secondary files can be used to spread data across multiple disks by putting each file on a different disk drive. En outre, si la taille d'une base de données excède la taille maximale autorisée pour un fichier Windows, vous pouvez avoir recours aux fichiers secondaires afin que la base de données puisse continuer à croître.Additionally, if a database exceeds the maximum size for a single Windows file, you can use secondary data files so the database can continue to grow.

L'extension de fichier recommandée est .ndf.The recommended file name extension for secondary data files is .ndf.
Journal des transactionsTransaction Log Les fichiers journaux des transactions contiennent les informations du journal qui sont utilisées pour la restauration de la base de données.The transaction log files hold the log information that is used to recover the database. Chaque base de données doit posséder au moins un fichier journal.There must be at least one log file for each database. L'extension de fichier recommandée pour les journaux des transactions est .ldf.The recommended file name extension for transaction logs is .ldf.

Par exemple, il est possible de créer une base de données simple (appelée Sales ) incluant un fichier primaire qui contient toutes les données et tous les objets, et un fichier journal qui contient les informations du journal des transactions.For example, a simple database named Sales can be created that includes one primary file that contains all data and objects and a log file that contains the transaction log information. Ou encore, il est possible de créer une base de données plus complexe (appelée Orders ) incluant un fichier primaire et cinq fichiers secondaires.Alternatively, a more complex database named Orders can be created that includes one primary file and five secondary files. Les données et les objets de la base de données sont répartis dans les six fichiers, et les quatre fichiers journaux contiennent les informations du journal des transactions.The data and objects within the database spread across all six files, and the four log files contain the transaction log information.

Par défaut, les données et les journaux des transactions sont placés sur le même lecteur et leur chemin est identique,By default, the data and transaction logs are put on the same drive and path. ceci afin de gérer les systèmes comportant un seul disque.This is done to handle single-disk systems. Cependant, cette configuration n'est pas forcément optimale pour les environnements de production.However, this may not be optimal for production environments. Nous vous recommandons de placer les fichiers de données et les fichiers journaux sur des disques distincts.We recommend that you put data and log files on separate disks.

Noms de fichiers logiques et physiquesLogical and Physical File Names

Les fichiers SQL ServerSQL Server ont deux types de nom de fichier : SQL ServerSQL Server files have two file name types:

logical_file_name : nom utilisé pour faire référence au fichier physique dans toutes les instructions Transact-SQL.logical_file_name: The logical_file_name is the name used to refer to the physical file in all Transact-SQL statements. Le nom de fichier logique doit respecter les règles régissant les identificateurs SQL ServerSQL Server et doit être unique parmi les noms de fichier logique dans la base de données.The logical file name must comply with the rules for SQL ServerSQL Server identifiers and must be unique among logical file names in the database. Cela est défini par l’argument NAME dans ALTER DATABASE.This is set by the NAME argument in ALTER DATABASE. Pour plus d’informations, consultez Options de fichiers et de groupes de fichiers ALTER DATABASE (Transact-SQL).For more information, see ALTER DATABASE File and Filegroup Options (Transact-SQL).

os_file_name : nom du fichier physique, comprenant le chemin du répertoire.os_file_name: The os_file_name is the name of the physical file including the directory path. Il doit respecter les règles en vigueur pour les noms de fichiers du système d'exploitation.It must follow the rules for the operating system file names. Cela est défini par l’argument FILENAME dans ALTER DATABASE.This is set by the FILENAME argument in ALTER DATABASE. Pour plus d’informations, consultez Options de fichiers et de groupes de fichiers ALTER DATABASE (Transact-SQL).For more information, see ALTER DATABASE File and Filegroup Options (Transact-SQL).

Important

Les données et les fichiers journaux SQL ServerSQL Server peuvent être implantés dans les systèmes de fichiers FAT ou NTFS. SQL ServerSQL Server data and log files can be put on either FAT or NTFS file systems. Sur les systèmes Windows, nous vous recommandons d’utiliser le système de fichiers NTFS pour des raisons de sécurité.On Windows systems, we recommend using the NTFS file system because the security aspects of NTFS.

Avertissement

Les fichiers journaux et les groupes de fichiers de données en lecture/écriture ne peuvent pas être implantés dans un système de fichiers compressé NTFS.Read/write data filegroups and log files cannot be placed on an NTFS compressed file system. Seuls les groupes de fichiers secondaires en lecture seule et les bases de données en lecture seule peuvent être implantés dans un système de fichiers compressé NTFS.Only read-only databases and read-only secondary filegroups can be put on an NTFS compressed file system. Pour économiser de l’espace, il est fortement recommandé d’utiliser la compression des données au lieu de la compression du système de fichiers.For space savings, it is highly recommended to use data compression instead of file system compression.

Quand plusieurs instances de SQL ServerSQL Server sont en cours d’exécution sur un ordinateur unique, chaque instance reçoit un répertoire par défaut différent pour contenir les fichiers des bases de données créées dans l’instance.When multiple instances of SQL ServerSQL Server are running on a single computer, each instance receives a different default directory to hold the files for the databases created in the instance. Pour plus d’informations, consultez Emplacements des fichiers pour les instances par défaut et les instances nommées de SQL Server.For more information, see File Locations for Default and Named Instances of SQL Server.

Pages de fichiers de donnéesData File Pages

Les pages d'un fichier de données SQL ServerSQL Server sont numérotées de manière séquentielle, zéro (0) correspondant à la première page.Pages in a SQL ServerSQL Server data file are numbered sequentially, starting with zero (0) for the first page in the file. Chaque fichier d'une base de données possède un numéro d'identification de fichier unique.Each file in a database has a unique file ID number. L'ID de fichier et le numéro de page sont nécessaires pour identifier de manière unique une page d'une base de données.To uniquely identify a page in a database, both the file ID and the page number are required. L'exemple ci-dessous montre les numéros de page d'une base de données disposant d'un fichier de données primaire de 4 Mo et d'un fichier de données secondaire de 1 Mo.The following example shows the page numbers in a database that has a 4-MB primary data file and a 1-MB secondary data file.

data_file_pages

La première page de chaque fichier est une page d'en-tête qui contient des informations sur les attributs du fichier.The first page in each file is a file header page that contains information about the attributes of the file. D'autres pages situées au début du fichier contiennent également des informations sur le système, comme les tables d'allocation.Several of the other pages at the start of the file also contain system information, such as allocation maps. Une des pages système stockée à la fois dans le fichier de données primaire et dans le premier fichier journal est une page d'amorçage de base de données qui contient des informations sur les attributs de la base de données.One of the system pages stored in both the primary data file and the first log file is a database boot page that contains information about the attributes of the database. Pour plus d’informations sur les pages et les types de page, consultez Guide d’architecture des pages et des étendues.For more information about pages and page types, see Pages and Extents Architecture Guide.

Taille du fichierFile Size

Les fichiers SQL ServerSQL Server peuvent augmenter automatiquement leur volume et dépasser leur taille d'origine. SQL ServerSQL Server files can grow automatically from their originally specified size. Lorsque vous définissez un fichier, vous pouvez spécifier un incrément de croissance précis.When you define a file, you can specify a specific growth increment. Chaque fois que le fichier est rempli, sa taille augmente en fonction de l'incrément de croissance.Every time the file is filled, it increases its size by the growth increment. Si un groupe comporte plusieurs fichiers, ces derniers ne s'accroissent pas automatiquement jusqu'à ce que tous les fichiers soient remplis.If there are multiple files in a filegroup, they will not autogrow until all the files are full. La croissance se produit dans ce cas selon le principe de chacun son tour avec utilisation d’un remplissage proportionnel.Growth then occurs in a round-robin fashion using proportional fill.

Chaque fichier peut également avoir une taille maximale.Each file can also have a maximum size specified. En l'absence de spécification, le fichier continue à s'accroître jusqu'à ce que tout l'espace disque disponible soit utilisé.If a maximum size is not specified, the file can continue to grow until it has used all available space on the disk. Cette fonctionnalité s'avère particulièrement utile lorsque SQL ServerSQL Server sert de base de données incorporée dans une application pour laquelle l'utilisateur n'a pas accès à un administrateur système.This feature is especially useful when SQL ServerSQL Server is used as a database embedded in an application where the user does not have convenient access to a system administrator. L'utilisateur peut laisser les fichiers s'accroître automatiquement autant que nécessaire pour réduire la charge administrative liée à la gestion de l'espace disponible dans la base de données et à l'affectation manuelle d'espace supplémentaire.The user can let the files autogrow as required to reduce the administrative burden of monitoring free space in the database and manually allocating additional space.

Si l’initialisation instantanée de fichiers (IFI) est activée pour SQL ServerSQL Server, il existe une surcharge minimale au moment de l’allocation de l’espace supplémentaire pour les fichiers de données.If Instant File Initialization (IFI) is enabled for SQL ServerSQL Server, there is minimal overhead when allocating new space for data files.

Pour plus d’informations sur la gestion du fichier journal de transactions, consultez Gérer la taille du fichier journal des transactions.For more information on transaction log file management, see Manage the size of the transaction log file.

Fichiers d'instantanés de base de donnéesDatabase Snapshot Files

Le format de fichier utilisé par un instantané de base de données pour stocker ses données de copie lors de l'écriture varie selon que l'instantané a été créé par un utilisateur ou utilisé en interne :The form of file that is used by a database snapshot to store its copy-on-write data depends on whether the snapshot is created by a user or used internally:

  • Un instantané de base de données créé par un utilisateur stocke ses données dans un ou plusieurs fichiers partiellement alloués.A database snapshot that is created by a user stores its data in one or more sparse files. La technologie des fichiers partiellement alloués constitue une fonctionnalité du système de fichiers NTFS.Sparse file technology is a feature of the NTFS file system. Au départ, un fichier partiellement alloué ne contient pas de données utilisateur et aucun espace disque pour les données utilisateur ne lui a été alloué.At first, a sparse file contains no user data, and disk space for user data has not been allocated to the sparse file. Pour des informations générales sur l’utilisation des fichiers partiellement alloués dans un instantané de base de données et sur le schéma de croissance des instantanés de bases de données, consultez Afficher la taille du fichier partiellement alloué d’un instantané de base de données (Transact-SQL).For general information about the use of sparse files in database snapshots and how database snapshots grow, see View the Size of the Sparse File of a Database Snapshot.
  • Les instantanés de base de données sont utilisés en interne par certaines commandes DBCC.Database snapshots are used internally by certain DBCC commands. Citons notamment les commandes DBCC CHECKDB, DBCC CHECKTABLE, DBCC CHECKALLOC et DBCC CHECKFILEGROUP.These commands include DBCC CHECKDB, DBCC CHECKTABLE, DBCC CHECKALLOC, and DBCC CHECKFILEGROUP. Un instantané interne de base de données utilise les flux de données de remplacement éparses des fichiers de la base de données d'origine.An internal database snapshot uses sparse alternate data streams of the original database files. Comme les fichiers partiellement alloués, les flux de données de remplacement sont une fonctionnalité du système de fichiers NTFS.Like sparse files, alternate data streams are a feature of the NTFS file system. L'utilisation de flux de données de remplacement éparses permet d'associer plusieurs affectations de données avec un seul fichier ou dossier sans influer sur les statistiques de taille de fichier ou de volume.The use of sparse alternate data streams allows for multiple data allocations to be associated with a single file or folder without affecting the file size or volume statistics.

Groupes de fichiersFilegroups

Chaque base de données possède un groupe de fichiers primaire.Every database has a primary filegroup. Celui-ci contient le fichier de données primaire et tous les fichiers secondaires qui n'ont pas été placés dans d'autres groupes de fichiers.This filegroup contains the primary data file and any secondary files that are not put into other filegroups. Il est possible de créer des groupes de fichiers définis par l'utilisateur pour regrouper des fichiers de données à des fins d'administration, d'allocation des données et de placement.User-defined filegroups can be created to group data files together for administrative, data allocation, and placement purposes.

Par exemple, trois fichiers Data1.ndf, Data2.ndf et Data3.ndf peuvent être créés sur trois lecteurs, respectivement, puis affectés au groupe de fichiers fgroup1.For example, three files, Data1.ndf, Data2.ndf, and Data3.ndf, can be created on three disk drives, respectively, and assigned to the filegroup fgroup1. Une table peut alors être créée spécifiquement pour le groupe de fichiers fgroup1.A table can then be created specifically on the filegroup fgroup1. Les requêtes portant sur des données de la table seront réparties sur les trois disques, ce qui permettra d'améliorer les performances.Queries for data from the table will be spread across the three disks; this will improve performance. Une amélioration similaire des performances pourra être obtenue en créant un fichier unique sur un jeu de bandes RAID (Redundant Array of Independent Disks).The same performance improvement can be accomplished by using a single file created on a RAID (redundant array of independent disks) stripe set. Cependant, les fichiers et les groupes de fichiers vous permettent d'ajouter facilement des fichiers sur de nouveaux disques.However, files and filegroups let you easily add new files to new disks.

Tous les fichiers de données sont stockés dans les groupes de fichiers répertoriés dans le tableau suivant.All data files are stored in the filegroups listed in the following table.

Groupe de fichiersFilegroup DescriptionDescription
PrincipalPrimary Groupe de fichiers qui contient le fichier primaire.The filegroup that contains the primary file. Toutes les tables système sont allouées au groupe de fichiers primaire.All system tables are allocated to the primary filegroup.
Données optimisées en mémoireMemory Optimized Data Un groupe de fichiers optimisé en mémoire est basé sur un groupe de fichiers FilestreamA memory-optimized filegroup is based on filestream filegroup
FilestreamFilestream
Définie par l'utilisateurUser-defined Groupe de fichiers créé par l'utilisateur lorsque celui-ci crée la base de données ou lorsqu'il la modifie ultérieurement.Any filegroup that is specifically created by the user when the user first creates or later modifies the database.

Groupe de fichiers (principal) par défautDefault (Primary) Filegroup

Lorsque des objets sont créés dans la base de données, sans spécifier le groupe de fichiers auquel ils appartiennent, ces objets sont affectés au groupe de fichiers par défaut.When objects are created in the database without specifying which filegroup they belong to, they are assigned to the default filegroup. À tout moment, un groupe de fichiers précis est désigné comme étant le groupe de fichiers par défaut.At any time, exactly one filegroup is designated as the default filegroup. Les fichiers du groupe de fichiers par défaut doivent être suffisamment volumineux pour contenir tous les nouveaux objets qui ne sont pas affectés à d'autres groupes de fichiers.The files in the default filegroup must be large enough to hold any new objects not allocated to other filegroups.

Le groupe de fichiers PRIMARY est le groupe de fichiers par défaut sauf s'il est modifié par l'instruction ALTER DATABASE.The PRIMARY filegroup is the default filegroup unless it is changed by using the ALTER DATABASE statement. Les objets et tables système restent affectés au groupe de fichiers PRIMARY, et non au nouveau groupe par défaut.Allocation for the system objects and tables remains within the PRIMARY filegroup, not the new default filegroup.

Groupe de fichiers de données optimisé en mémoireMemory Optimized Data Filegroup

Pour plus d’informations sur les groupes de fichiers optimisés en mémoire, consultez Groupes de fichiers optimisés en mémoire.For more information on memory-optimized filegroups, see Memory Optimized Filegroup.

Groupe de fichiers FilestreamFilestream Filegroup

Pour plus d’informations sur les groupes de fichiers Filestream, consultez FILESTREAM et Créer une base de données compatible FILESTREAM.For more information on filestream filegroups, see FILESTREAM and Create a FILESTREAM-Enabled Database.

Exemple de fichier et de groupe de fichiersFile and Filegroup Example

L’exemple ci-dessous crée une base de données sur une instance de SQL Server.The following example creates a database on an instance of SQL Server. La base de données possède un fichier de données primaire, un groupe de fichiers défini par l'utilisateur et un fichier journal.The database has a primary data file, a user-defined filegroup, and a log file. Le fichier de données primaire fait partie du groupe de fichiers primaire et le groupe de fichiers défini par l'utilisateur possède deux fichiers de données secondaires.The primary data file is in the primary filegroup and the user-defined filegroup has two secondary data files. Une instruction ALTER DATABASE fait du groupe de fichiers défini par l'utilisateur le groupe par défaut.An ALTER DATABASE statement makes the user-defined filegroup the default. Une table est ensuite créée en spécifiant le groupe de fichiers défini par l'utilisateur.A table is then created specifying the user-defined filegroup. Cet exemple utilise le chemin générique c:\Program Files\Microsoft SQL Server\MSSQL.1 pour éviter de spécifier une version de SQL Server.(This example uses a generic path c:\Program Files\Microsoft SQL Server\MSSQL.1 to avoid specifying a version of SQL Server.)

USE master;
GO
-- Create the database with the default data
-- filegroup, filstream filegroup and a log file. Specify the
-- growth increment and the max size for the
-- primary data file.
CREATE DATABASE MyDB
ON PRIMARY
  ( NAME='MyDB_Primary',
    FILENAME=
       'c:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\data\MyDB_Prm.mdf',
    SIZE=4MB,
    MAXSIZE=10MB,
    FILEGROWTH=1MB),
FILEGROUP MyDB_FG1
  ( NAME = 'MyDB_FG1_Dat1',
    FILENAME =
       'c:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\data\MyDB_FG1_1.ndf',
    SIZE = 1MB,
    MAXSIZE=10MB,
    FILEGROWTH=1MB),
  ( NAME = 'MyDB_FG1_Dat2',
    FILENAME =
       'c:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\data\MyDB_FG1_2.ndf',
    SIZE = 1MB,
    MAXSIZE=10MB,
    FILEGROWTH=1MB),
FILEGROUP FileStreamGroup1 CONTAINS FILESTREAM
  ( NAME = 'MyDB_FG_FS',
    FILENAME = 'c:\Data\filestream1')
LOG ON
  ( NAME='MyDB_log',
    FILENAME =
       'c:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\data\MyDB.ldf',
    SIZE=1MB,
    MAXSIZE=10MB,
    FILEGROWTH=1MB);
GO
ALTER DATABASE MyDB 
  MODIFY FILEGROUP MyDB_FG1 DEFAULT;
GO

-- Create a table in the user-defined filegroup.
USE MyDB;
CREATE TABLE MyTable
  ( cola int PRIMARY KEY,
    colb char(8) )
ON MyDB_FG1;
GO

-- Create a table in the filestream filegroup
CREATE TABLE MyFSTable
(
    cola int PRIMARY KEY,
  colb VARBINARY(MAX) FILESTREAM NULL
)
GO

L’illustration suivante récapitule les résultats de l’exemple précédent (excepté pour les données Filestream).The following illustration summarizes the results of the previous example (except for the Filestream data).

filegroup_example

Stratégie de remplissage des fichiers et des groupes de fichiersFile and Filegroup Fill Strategy

Dans un groupe de fichiers, le remplissage des fichiers s'effectue selon un mode proportionnel.Filegroups use a proportional fill strategy across all the files within each filegroup. Le Moteur de base de données SQL ServerSQL Server Database Engine écrit les données en les répartissant entre les fichiers du groupe proportionnellement à l'espace disponible dans chaque fichier, au lieu de remplir un premier fichier.As data is written to the filegroup, the Moteur de base de données SQL ServerSQL Server Database Engine writes an amount proportional to the free space in the file to each file within the filegroup, instead of writing all the data to the first file until full. Il écrit ensuite dans le fichier suivant.It then writes to the next file. Par exemple, si le fichier f1 a 100 Mo et le fichier f2 200 Mo d'espace libre, une extension est allouée à partir de f1, deux extensions à partir de f2, et ainsi de suite.For example, if file f1 has 100 MB free and file f2 has 200 MB free, one extent is allocated from file f1, two extents from file f2, and so on. De cette façon, les deux fichiers arrivent à peu près en même temps à saturation et le résultat est un entrelacement simple.In this way, both files become full at about the same time, and simple striping is achieved.

Dès que tous les fichiers d'un groupe de fichiers sont remplis, le Moteur de base de données SQL ServerSQL Server Database Engine accroît automatiquement la taille d'un fichier à la fois, selon le mécanisme de tourniquet (round robin), afin d'y insérer plus de données, à condition que la fonction de croissance automatique de la base de données soit activée.As soon as all the files in a filegroup are full, the Moteur de base de données SQL ServerSQL Server Database Engine automatically expands one file at a time in a round-robin manner to allow for more data, provided that the database is set to grow automatically. Par exemple, un groupe de fichiers contient trois fichiers définis en mode de croissance automatique.For example, a filegroup is made up of three files, all set to automatically grow. En cas de saturation de tous les fichiers du groupe de fichiers, seul le premier fichier sera étendu.When space in all the files in the filegroup is exhausted, only the first file is expanded. Si le premier fichier est saturé, et qu'il n'est plus possible d'enregistrer des données dans le groupe de fichiers, le deuxième fichier est étendu.When the first file is full and no more data can be written to the filegroup, the second file is expanded. Si le deuxième fichier est plein et qu'il n'est plus possible d'enregistrer des données dans le groupe de fichiers, le troisième fichier sera étendu.When the second file is full and no more data can be written to the filegroup, the third file is expanded. Si le troisième fichier est plein et qu'il n'est plus possible d'enregistrer des données dans le groupe de fichiers, le premier fichier sera à nouveau étendu, et ainsi de suite.If the third file becomes full and no more data can be written to the filegroup, the first file is expanded again, and so on.

Règles pour concevoir des fichiers et des groupes de fichiersRules for designing Files and Filegroups

Les règles suivantes s'appliquent aux fichiers et aux groupes de fichiers :The following rules pertain to files and filegroups:

  • Un fichier ou un groupe de fichiers ne peut pas être utilisé par plusieurs bases de données.A file or filegroup cannot be used by more than one database. Par exemple, les fichiers sales.mdf et sales.ndf, qui contiennent des données et des objets de la base de données sales, ne peuvent pas être utilisés par une autre base de données.For example, file sales.mdf and sales.ndf, which contain data and objects from the sales database, cannot be used by any other database.
  • Un fichier ne peut appartenir qu'à un seul groupe.A file can be a member of only one filegroup.
  • Les fichiers journaux des transactions ne peuvent jamais faire partie d'un groupe de fichiers.Transaction log files are never part of any filegroups.

RecommandationsRecommendations

Voici une série de recommandations générales à suivre lors de l'utilisation de fichiers et de groupes de fichiers :Following are some general recommendations when you are working with files and filegroups:

  • La plupart des bases de données fonctionnent très bien avec un seul fichier de données et un seul fichier journal des transactions.Most databases will work well with a single data file and a single transaction log file.
  • Si vous utilisez plusieurs fichiers de données, créez un second groupe de fichiers pour les fichiers supplémentaires et utilisez-le comme groupe de fichiers par défaut.If you use multiple data files, create a second filegroup for the additional file and make that filegroup the default filegroup. Ainsi, le fichier primaire ne contiendra que les objets et les tables système.In this way, the primary file will contain only system tables and objects.
  • Pour optimiser les performances, créez si possible les fichiers et les groupes de fichiers sur différents disques disponibles.To maximize performance, create files or filegroups on different available disks as possible. Placez dans des groupes de fichiers différents les objets qui se disputent fortement l'espace disque.Put objects that compete heavily for space in different filegroups.
  • Utilisez les groupes de fichiers pour permettre le placement des objets sur des disques physiques spécifiques.Use filegroups to enable placement of objects on specific physical disks.
  • Placez dans des groupes différents les tables qui sont utilisées dans les mêmes requêtes jointes.Put different tables used in the same join queries in different filegroups. Vous améliorerez ainsi les performances, puisque les opérations d'entrée/sortie de recherche des données jointes se feront en parallèle.This will improve performance, because of parallel disk I/O searching for joined data.
  • Placez dans des groupes de fichiers différents les tables fréquemment consultées et les index non-cluster qui leur appartiennent.Put heavily accessed tables and the nonclustered indexes that belong to those tables on different filegroups. Vous améliorerez ainsi les performances, puisque les opérations d'entrée/sortie se feront en parallèle, les fichiers étant situés sur différents disques physiques.This will improve performance, because of parallel I/O if the files are located on different physical disks.
  • Ne placez pas les fichiers journaux de transactions sur le même disque physique que les autres fichiers et groupes de fichiers.Do not put the transaction log file(s) on the same physical disk that has the other files and filegroups.

Pour plus d’informations sur les recommandations relatives à la gestion du fichier journal de transactions, consultez Gérer la taille du fichier journal des transactions.For more information on transaction log file management recommendations, see Manage the size of the transaction log file.

CREATE DATABASE (SQL Server Transact-SQL) CREATE DATABASE (SQL Server Transact-SQL)
Options de fichiers et de groupes de fichiers ALTER DATABASE (Transact-SQL) ALTER DATABASE File and Filegroup Options (Transact-SQL)
Attacher et détacher une base de données (SQL Server)Database Detach and Attach (SQL Server)
Guide d’architecture et gestion du journal des transactions SQL Server SQL Server Transaction Log Architecture and Management Guide
Guide d’architecture des pages et des étendues Pages and Extents Architecture Guide
Gérer la taille du fichier journal des transactionsManage the size of the transaction log file