Description des effets d'opérations nonlogged et faiblement connectées de sauvegarde de journal de transaction et le processus de restauration dans SQL Server

Traductions disponibles Traductions disponibles
Numéro d'article: 272093 - Voir les produits auxquels s'applique cet article
Agrandir tout | Réduire tout

Sommaire

Résumé

Certaines opérations, qui sont soit nonlogged, faiblement connecté ou qui supprimer la partie inactive du journal des transactions, peut avoir un effet sur la séquence du journal des transactions. Cet article fournit des informations sur ces opérations et leur effet sur la transaction suivante journal de sauvegarde et restaurer des processus.

Par rapport à SQL Server 7.0, SQL Server 2000 utilise trois nouveaux modèles de récupération. La différence de SQL Server 2000 est également décrite dans cet article.

Plus d'informations

SQL Server 7.0

En fonction de l'opération nonlogged, SQL Server 7.0 peuvent se comporter de trois façons différentes lorsque vous tentez d'exécuter une sauvegarde de journaux transaction après ces opérations nonlogged :
  • Un comportement échoue sauvegarde ces messages d'erreur :
    Serveur: Msg 4213, Niveau 16, État 1, ligne 1

    Ne peuvent pas autoriser BACKUP LOG car le fichier « dbname » a été soumis nonlogged mises à jour et ne peut pas être appliquée avant. Effectuer un complète de la base de données ou base de données différentielle de, sauvegarde.
    -et-
    Serveur: Msg 3013, Niveau 16, État 1, ligne 1

    Sauvegarde ou restauration opération termine anormalement.
    ce qui provoque ce comportement?

    Opérations nonlogged qui entraîner un comportement incluent :

    • Nonlogged bcp
    • SELECT INTO
    • WRITETEXT
    • UPDATETEXT
    • Services DTS (Data Transformation) avec Utilisation rapide charge et verrouillage de table activé.
    Toutes les opérations précédentes d'impliquent soit modifier les données ou Insérer les nouvelles données. Parce que les nouvelles données ne sont pas entièrement connectées dans le journal des transactions, le journal Impossible d'utiliser pour restaurer les données plus loin dans le cas d'une défaillance irrémédiable. Une sauvegarde complète ou différentielle de base de données doit être effectuée avant de sauvegardes du journal des transactions peuvent reprendre.

  • La sauvegarde échoue avec ces messages d'erreur : comportement deux la sauvegarde renvoie ce message d'avertissement et effectue la sauvegarde de journal des transactions :
    Aucune sauvegarde de base de données en cours n'est. Cette sauvegarde journal ne peut pas être utilisée pour restaurer par progression une sauvegarde de base de données précédente.
    ce qui provoque ce comportement?

    Opérations provoquant comportement deux incluent :

    • BACKUP LOG WITH TRUNCATE_ONLY
    • sp_dboption « trunc. session chkpt », défini sur TRUE, suivie

      sp_dboption « trunc. une session chkpt, défini sur FALSE.
    Ces opérations tronquent la partie inactive du journal des transactions sans sauvegarder le journal des transactions. Après avoir tronquer le journal, les tentatives suivantes de sauvegarde le journal des transactions renvoie de nouveau le message d'avertissement. SQL Server continuer à créer la sauvegarde de journal des transactions. Toutefois, cette sauvegarde de journal des transactions n'est pas valide et ne peut pas être restaurée. Les messages d'erreur suivants sont retournés lorsque tente de restaurer ces sauvegardes journal :

    Serveur: Msg 4305, Niveau 16, État 1, ligne 1

    Impossible de restaurer ce jeu de sauvegarde car la base de données n'a pas été reporté avant suffisamment loin. Vous devez d'abord restaurer tous les journaux précédentes avant de restaurer ce journal.
    -et-
    Serveur: Msg 3013, Niveau 16, État 1, ligne 1

    Sauvegarde ou restauration opération termine anormalement.
    Ce comportement est voulu par la conception même du produit. Tout utilisateur qui exécute une des opérations précédentes doit être conscient de la nature des opérations et la conséquence. Une sauvegarde complète ou différentielle de base de données doit être effectuée que si les opérations précédentes sont effectuées.
  • La sauvegarde échoue avec ces messages d'erreur : comportement trois le journal des transactions est sauvegardé sans message d'avertissement.
ce qui provoque ce comportement?

Opération qui mène à trois comportement :
  • VIDER LA TABLE
Table Tronquer récupère les pages utilisées par la table. Le journal des transactions enregistre les informations de libération de page. Par conséquent, l'opération peut être utilisée vers l'avant. La sauvegarde de journal des transactions suivantes est autorisée et peut être utilisée pour une restauration ultérieure.

SQL Server 2000 et SQL Server 2005

Dans le modèle de récupération complète, chaque modification de la base de données est enregistrée. Donc, aucune des conditions erreur ci-dessus se produit.

Dans le modèle de récupération simple, toute tentative de sauvegarde le journal des transactions toujours échoue avec les messages d'erreur suivants :
Serveur: Msg 4208, Niveau 16, État 1, ligne 1

L'instruction BACKUP LOG n'est pas autorisée pendant que le mode de récupération est SIMPLE. Utiliser BACKUP DATABASE ou modifier le modèle de récupération à l'aide de ALTER DATABASE.
-et-
Serveur: Msg 3013, Niveau 16, État 1, ligne 1

JOURNAL de sauvegarde se termine anormalement.
Dans le modèle Bulk-connecté, journalisation minimale peut être exécutée pour les opérations suivantes gagner de l'espace journal des transactions :
  • Opérations chargement en bloc, notamment les bcp et BULK INSERT.
  • CREATE INDEX, y compris les vues indexées.
  • SELECT INTO
  • WRITETEXT
  • UPDATETEXT
  • DTS avec Utilisation rapide charge et verrouillage de table activé.
Différente de SQL Server 7.0, SQL Server 2000 et SQL Server 2005 en fait permet le journal des transactions pour être sauvegardé après ces opérations faiblement consignées. La sauvegarde d'une telle transaction journaux non seulement sauvegarde le journal, elle aussi sauvegarde les étendues affectés les opérations précédentes. Par conséquent, ces sauvegardes du journal peuvent être utilisés pour une restauration ultérieure. Cependant, le modèle de récupération masse permet uniquement la base de données être restaurée à la fin d'une sauvegarde du journal transaction lorsque la sauvegarde du journal contient des modifications en bloc. Moment de récupération n'est pas prise en charge. En outre, sauvegarde un journal contenant des opérations en bloc-connecté requiert l'accès à tous les fichiers de données dans la base de données. Si les fichiers de données ne sont pas accessibles, le journal des transactions final ne peut pas être sauvegardé et toutes les opérations validées dans une session sont perdues.

Dans SQL Server 2000 et dans SQL Server 2005, le journal de vidage sur option point de contrôle existe uniquement pour des raisons de compatibilité descendante. Microsoft recommande d'utiliser le modèle de récupération simple à la place. Si vous modifier le modèle de récupération à partir de plein ou en bloc-connecté à simple et puis revenez, sauvegardes de journaux de transactions suivantes renvoient le même message d'avertissement comme décrit dans section comportement deux de la « SQL Server 7.0 » et effectuer la sauvegarde du journal après le message d'avertissement.

Opérations de restauration suivantes utilisant ces sauvegardes du journal transaction échouer avec les messages d'erreur suivants :
Serveur: Msg 4305, Niveau 16, État 1, ligne 1

Le journal de ce jeu de sauvegarde commence au numéro LSNnumber , qui est trop tard pour appliquer à la base de données. Une sauvegarde de journal antérieure qui inclut numéro LSNnumber peut être restaurée.
-et-
Serveur: Msg 3013, Niveau 16, État 1, ligne 1

RESTORE LOG se termine anormalement.
Comportement trois décrit dans la section « SQL Server 7.0 » s'applique également à SQL Server 2000.

Propriétés

Numéro d'article: 272093 - Dernière mise à jour: mercredi 7 décembre 2005 - Version: 4.3
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft SQL Server 7.0 Standard
  • Microsoft SQL Server 2000 Standard
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Express Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Workgroup Edition
Mots-clés : 
kbmt kbinfo KB272093 KbMtfr
Traduction automatique
IMPORTANT : Cet article est issu du système de traduction automatique mis au point par Microsoft (http://support.microsoft.com/gp/mtdetails). Un certain nombre d?articles obtenus par traduction automatique sont en effet mis à votre disposition en complément des articles traduits en langue française par des traducteurs professionnels. Cela vous permet d?avoir accès, dans votre propre langue, à l?ensemble des articles de la base de connaissances rédigés originellement en langue anglaise. Les articles traduits automatiquement ne sont pas toujours parfaits et peuvent comporter des erreurs de vocabulaire, de syntaxe ou de grammaire (probablement semblables aux erreurs que ferait une personne étrangère s?exprimant dans votre langue !). Néanmoins, mis à part ces imperfections, ces articles devraient suffire à vous orienter et à vous aider à résoudre votre problème. Microsoft s?efforce aussi continuellement de faire évoluer son système de traduction automatique.
La version anglaise de cet article est la suivante: 272093
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.

Envoyer des commentaires

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com