S’applique à
SQL Server 2008 Developer SQL Server 2008 Enterprise SQL Server 2008 Standard SQL Server 2008 Standard Edition for Small Business SQL Server 2008 Workgroup SQL Server 2008 R2 Developer SQL Server 2008 R2 Enterprise SQL Server 2008 R2 Standard SQL Server 2008 R2 Workgroup

Symptômes

Prenons l’exemple du scénario suivant :

  • Vous créez une base de données dans Microsoft SQL Server 2008 R2.

  • Vous mettez à jour le nom logique de la base de données à l’aide de l’instruction ALTER DATABASE.

  • Vous effectuez une sauvegarde complète de la base de données. Remarque Un fichier de sauvegarde de base de données complet est généré une fois la sauvegarde effectuée.

  • Vous essayez de restaurer la base de données à partir du fichier de sauvegarde de base de données.

Dans ce scénario, le message d'erreur suivant s'affiche :

Msg 3234, Niveau 16, État 2, Ligne 1Le fichier logique «<nom de fichier logique>» ne fait pas partie de la base de données «<nom de base de données>». Utilisez RESTORE FILELISTONLY pour répertorier les noms de fichiers logiques.Msg 3013, Level 16, State 1, Line 1RESTORE DATABASE se termine anormalement.

Si vous utilisez l’instruction RESTORE FILELISTONLY pour case activée le fichier de sauvegarde, vous constatez que le nom de fichier logique que vous avez mis à jour est endommagé. Le dernier caractère du nom de fichier logique est tronqué. Par exemple, vous essayez de mettre à jour le nom logique d’une base de données pour DB_modified. Toutefois, elle est incorrectement modifiée en DB_modifie dans le fichier de sauvegarde.Remarque Ce problème ne se produit pas si vous redémarrez le service SQL Server après la mise à jour du nom de fichier logique.

Résolution

Informations sur les mises à jour cumulatives

SQL Server 2008 R2

Le correctif pour ce problème a été publié pour la première fois dans la mise à jour cumulative 6. Pour plus d’informations sur l’obtention de ce package de mise à jour cumulative pour SQL Server 2008 R2, cliquez sur le numéro d’article suivant pour afficher l’article dans la Base de connaissances Microsoft :

2489376 Package de mise à jour cumulative 6 pour SQL Server 2008 R2 Remarque Étant donné que les builds sont cumulatives, chaque nouvelle version de correctif contient tous les correctifs logiciels et tous les correctifs de sécurité inclus dans la version précédente du correctif SQL Server 2008 R2. Nous vous recommandons d’appliquer la version la plus récente du correctif qui contient ce correctif. Pour plus d'informations, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft :

981356 Les builds SQL Server 2008 R2 qui ont été publiées après SQL Server 2008 R2 a été publiée

Informations sur le correctif logiciel

Un correctif logiciel pris en charge est disponible auprès de Microsoft. Toutefois, ce correctif logiciel est destiné à corriger uniquement le problème décrit dans cet article. Appliquez ce correctif logiciel uniquement aux systèmes qui rencontrent le problème décrit dans cet article. Ce correctif logiciel peut recevoir des tests supplémentaires. Par conséquent, si vous n’êtes pas gravement affecté par ce problème, nous vous recommandons d’attendre la prochaine mise à jour logicielle qui contient ce correctif logiciel.Si le correctif logiciel est disponible en téléchargement, il existe une section « Téléchargement du correctif logiciel disponible » en haut de cet article de la Base de connaissances. Si cette section n’apparaît pas, contactez le service clientèle et le support technique Microsoft pour obtenir le correctif logiciel. Remarque Si des problèmes supplémentaires se produisent ou si une résolution des problèmes est nécessaire, vous devrez peut-être créer une demande de service distincte. Les coûts de support habituels s’appliquent aux questions et problèmes de support supplémentaires qui ne sont pas éligibles pour ce correctif logiciel spécifique. Pour obtenir la liste complète des numéros de téléphone du service clientèle et du support technique Microsoft ou pour créer une demande de service distincte, visitez le site web Microsoft suivant :

http://support.microsoft.com/contactus/?ws=supportRemarque Le formulaire « Téléchargement du correctif logiciel disponible » affiche les langues pour lesquelles le correctif est disponible. Si vous ne voyez pas votre langue, c’est qu’un correctif logiciel n’est pas disponible pour cette langue.

Conditions préalables

Pour appliquer ce correctif, Microsoft SQL Server 2008 R2 doit être installé.

Nécessité de redémarrer

Vous n’avez pas besoin de redémarrer l’ordinateur après avoir appliqué ce correctif logiciel.

Informations sur le remplacement de correctif logiciel

Ce correctif logiciel ne remplace aucun autre correctif logiciel.

Informations sur les fichiers

La version anglaise de ce correctif logiciel contient les attributs de fichier (ou les attributs de fichier ultérieurs) répertoriés dans le tableau suivant. Les date et heure de création de ces fichiers sont exprimées en temps universel coordonné (UTC). Lorsque vous affichez les informations des fichiers, les données sont converties en heure locale. Pour connaître le décalage entre l’heure UTC et l’heure locale, utilisez l’onglet Fuseau horaire dans l’élément Date et heure du Panneau de configuration.

Instance principale de Database Services 32 bits SQL Server 2008 R2

Nom du fichier

Version du fichier

Taille du fichier

Date

Time

Platform

atxcore.dll

2009.100.1755.0

26464

24-Déc-10

0:33

x86

datacollectorcontroller.dll

2009.100.1755.0

135520

24-Déc-10

0:33

x86

etwcls.mof

Non applicable

1116328

23-Déc-10

3:54

Non applicable

instmsdb.sql

Non applicable

2241260

22-Déc-10

20:49

Non applicable

mssqlsystemresource.ldf

Non applicable

524288

22-Déc-10

22:52

Non applicable

mssqlsystemresource.mdf

Non applicable

63569920

22-Déc-10

22:52

Non applicable

sql_engine_core_inst_keyfile.dll

2009.100.1755.0

13664

24-Déc-10

0:31

x86

sqlaccess.dll

2009.100.1755.0

415584

24-Déc-10

0:29

x86

sqlagent.exe

2009.100.1755.0

367968

24-Déc-10

0:34

x86

sqlagent100_msdb_upgrade.sql

Non applicable

2371245

23-Déc-10

3:53

Non applicable

sqlos.dll

2009.100.1755.0

14688

24-Déc-10

0:22

x86

sqlscriptdowngrade.dll

2009.100.1755.0

14688

24-Déc-10

0:21

x86

sqlscriptupgrade.dll

2009.100.1755.0

4611424

24-Déc-10

0:21

x86

sqlservr.exe

2009.100.1755.0

42904928

24-Déc-10

0:34

x86

sqsrvres.dll

2009.100.1755.0

89952

24-Déc-10

0:21

x86

Instance principale de Database Services 64 bits SQL Server 2008 R2

Nom du fichier

Version du fichier

Taille du fichier

Date

Time

Platform

atxcore.dll

2009.100.1755.0

31584

23-Déc-10

23:40

x64

datacollectorcontroller.dll

2009.100.1755.0

262496

23-Déc-10

23:40

x64

etwcls.mof

Non applicable

1116328

23-Déc-10

3:54

Non applicable

instmsdb.sql

Non applicable

2241260

22-Déc-10

20:49

Non applicable

mssqlsystemresource.ldf

Non applicable

524288

22-Déc-10

22:52

Non applicable

mssqlsystemresource.mdf

Non applicable

63569920

22-Déc-10

22:52

Non applicable

sql_engine_core_inst_keyfile.dll

2009.100.1755.0

14176

23-Déc-10

23:40

x64

sqlaccess.dll

2009.100.1755.0

403296

23-Déc-10

23:38

x86

sqlagent.exe

2009.100.1755.0

428384

23-Déc-10

23:40

x64

sqlagent100_msdb_upgrade.sql

Non applicable

2371245

23-Déc-10

3:53

Non applicable

sqlos.dll

2009.100.1755.0

15712

23-Déc-10

23:37

x64

sqlscriptdowngrade.dll

2009.100.1755.0

15712

23-Déc-10

23:37

x64

sqlscriptupgrade.dll

2009.100.1755.0

4610912

23-Déc-10

23:37

x64

sqlservr.exe

2009.100.1755.0

61957984

23-Déc-10

23:40

x64

sqsrvres.dll

2009.100.1755.0

105824

23-Déc-10

23:37

x64

Itanium-architecture SQL Server 2008 R2 Database Services Core Instance

Nom du fichier

Version du fichier

Taille du fichier

Date

Time

Platform

atxcore.dll

2009.100.1755.0

63328

23-Déc-10

23:05

ia64

datacollectorcontroller.dll

2009.100.1755.0

477024

23-Déc-10

23:05

ia64

etwcls.mof

Non applicable

1116328

23-Déc-10

3:54

Non applicable

instmsdb.sql

Non applicable

2241260

22-Déc-10

20:49

Non applicable

mssqlsystemresource.ldf

Non applicable

524288

22-Déc-10

22:52

Non applicable

mssqlsystemresource.mdf

Non applicable

63569920

22-Déc-10

22:52

Non applicable

sql_engine_core_inst_keyfile.dll

2009.100.1755.0

19296

23-Déc-10

23:05

ia64

sqlaccess.dll

2009.100.1755.0

392032

23-Déc-10

23:01

x86

sqlagent.exe

2009.100.1755.0

1205600

23-Déc-10

23:09

ia64

sqlagent100_msdb_upgrade.sql

Non applicable

2371245

23-Déc-10

3:53

Non applicable

sqlos.dll

2009.100.1755.0

22368

23-Déc-10

22:56

ia64

sqlscriptdowngrade.dll

2009.100.1755.0

20832

23-Déc-10

22:56

ia64

sqlscriptupgrade.dll

2009.100.1755.0

4617056

23-Déc-10

22:56

ia64

sqlservr.exe

2009.100.1755.0

121762656

23-Déc-10

23:09

ia64

sqsrvres.dll

2009.100.1755.0

188768

23-Déc-10

22:56

ia64

État

Microsoft a confirmé l’existence de ce problème dans les produits Microsoft répertoriés dans la section « S’applique à ».

Solution de contournement 

Pour contourner ce problème, utilisez l’une des deux méthodes suivantes :

  • Une fois le nom de fichier logique modifié, exécutez les instructions suivantes pour redémarrer la base de données :ALTER DATABASE <nom de la base de données> SET OFFLINEALTER DATABASE <nom de base de données> SET ONLINE

  • Lorsque vous modifiez le nom du fichier logique, ajoutez un espace factice dans le nouveau nom logique. Par exemple, si vous souhaitez remplacer le nom logique par DB_modified, utilisez l’instruction suivante pour modifier le nom de fichier logique :ALTER DATABASE <nom de base de données> MODIFY FILE (NAME=N'<nom de base de données>', NEWNAME='DB_modified ') -- Append ' ' à NEWNAMENAME

Références

Pour plus d’informations sur l’instruction Transact-SQL ALTER DATABASE, visitez le site web MSDN (Microsoft Developer Network) suivant :

Informations générales sur l’instruction Transact-SQL ALTER DATABASEPour plus d’informations sur l’instruction Transact-SQL RESTORE FILELISTONLY, visitez le site web MSDN (Microsoft Developer Network) suivant :

Informations générales sur l’instruction Transact-SQL RESTORE FILELISTONLY

Besoin d’aide ?

Vous voulez plus d’options ?

Explorez les avantages de l’abonnement, parcourez les cours de formation, découvrez comment sécuriser votre appareil, etc.