Exporter (0) Imprimer
Développer tout

Modifications des comportements dans la réplication SQL Server

RemarqueRemarque

Pour SQL Server 2008 R2, il n'y a pas eu de modifications au contenu répertorié dans cette rubrique.

Cette rubrique décrit les changements de comportement dans la réplication SQL Server. Les modifications de comportement affectent le mode de fonctionnement ou d'interaction des fonctionnalités dans SQL Server 2008 par rapport aux versions précédentes de SQL Server.

Cette section décrit les modifications apportées au comportement des fonctionnalités de réplication dans SQL Server 2005.

Modifications des comportements qui affectent tous les types de réplication

Les modifications suivantes affectent tous les types de réplication.

Fonctionnalité

Description

Modèle de sécurité de l'agent de réplication

Dans les versions précédentes de SQL Server, les agents s'exécutaient par défaut sous le compte du service SQL Server Agent. SQL Server permet dorénavant de contrôler soigneusement chaque compte sous lequel les agents de réplication s'exécutent et établissent des connexions intégrées à Microsoft Windows avec les bases de données et d'autres ressources ; un compte différent peut être spécifié pour chaque agent. Pour plus d'informations, consultez Sécurité et protection (réplication) et Modèle de sécurité de l'Agent de réplication. Pour plus d'informations sur les effets de cette modification sur les mises à niveau, consultez la section « Nouveau modèle de sécurité de l'Agent de réplication » de Considérations relatives à la mise à niveau de bases de données répliquées et Dernières modifications dans la réplication SQL Server.

Gestionnaire de synchronisation Windows

Dans les versions de SQL Server antérieures à SQL Server 2005, la possibilité de synchroniser les abonnements avec le Gestionnaire de synchronisation était activée par défaut. Dans SQL Server 2005, vous devez explicitement activer cette option si vous souhaitez utiliser le Gestionnaire de synchronisation. Pour plus d'informations, consultez Procédure : synchroniser un abonnement à l'aide du Gestionnaire de synchronisation Windows (Windows Synchronization Manager).

Outil de résolution des conflits de réplication

Dans SQL Server 2000, l'outil de résolution des conflits de réplication était constitué en package en vue de sa redistribution. Dans SQL Server 2005, il n'est pas constitué en package séparément. Pour inclure l'outil de résolution des conflits de réplication dans une application, vous devez installer Microsoft .NET Framework 2.0 sur l'ordinateur sur lequel l'application est déployée et copier un nombre de fichiers sur l'ordinateur. Pour plus d'informations, consultez « Autres problèmes de mise à niveau de réplication » dans l'aide du Conseiller de mise à niveau. Pour plus d'informations sur le Conseiller de mise à niveau, consultez Utilisation du Conseiller de mise à niveau pour la préparation des mises à niveau.

Modifications de l'option de schéma

Les options de schéma vous permettent de spécifier la manière dont les attributs et les objets associés aux tables, tels que les index et les contraintes, sont répliqués. Le comportement d'un nombre d'options de schéma a changé dans SQL Server 2005. La section suivante de cette rubrique fournit plus d'informations.

Modifications du comportement des options de schéma

Le tableau suivant résume les modifications des options de schéma dans SQL Server 2005.

RemarqueRemarque

Si l'option de schéma 0x8000 a été définie dans SQL Server 2000, elle a été désactivée au cours de la mise à niveau vers SQL Server 2005. Pour les options de schéma 0x10 ou 0x40, la réplication peut créer un plus grand nombre d'index dans SQL Server 2005 que dans SQL Server 2000.

Option

Comportement si l'option est définie dans SQL Server 2000

Comportement si l'option est définie dans SQL Server 2005

0x80

Crée une contrainte ou un index. Si l'option 0x8000 est aussi activée, la clé primaire est créée comme contrainte comportant un index. Si l'option 0x8000 n'est pas activée, seul l'index sur la colonne de la clé primaire est créé.

Crée une contrainte de clé primaire au niveau de l'Abonné. Tous les index liés à la contrainte sont également répliqués même si les options 0x10 et 0x40 ne sont pas activées (ces options contrôlent la création d'index pour d'autres cas).

0x4000

Crée une contrainte ou un index. Si l'option 0x8000 est aussi activée, la contrainte unique est créée comme contrainte comportant un index. Si l'option 0x8000 n'est pas activée, seul l'index sur la colonne est créé.

Crée des contraintes uniques au niveau de l'Abonné. Tous les index liés à la contrainte sont également répliqués même si les options 0x10 et 0x40 ne sont pas activées (ces options contrôlent la création d'index pour d'autres cas).

0x8000

Crée des contraintes de clé primaire et des contraintes uniques si les options 0x80 ou 0x4000 sont aussi spécifiées. Si aucune de ces options n'est spécifiée, l'option 0x8000 n'a aucun effet.

L'option n'a pas d'effet.

Modifications de comportement pour la réplication transactionnelle

Les modifications suivantes affectent la réplication transactionnelle.

Fonctionnalité

Description

Appartenance de l'objet de l'Abonné

Lorsqu'il utilise l'Assistant Nouvelle publication SQL Server 2005 pour créer une publication, le propriétaire d'objets créés chez l'Abonné a par défaut la valeur du propriétaire de l'objet correspondant sur le serveur de publication. Dans les versions précédentes, le propriétaire n'était pas spécifié durant la création de l'objet chez l'Abonné ; il était par défaut le propriétaire associé au compte de l'Agent de distribution utilisé pour la connexion à l'Abonné. Le comportement n'est pas modifié pour la procédure stockée sp_addarticle (Transact-SQL).

Mode de sécurité des abonnements pouvant être mis à jour

Le paramètre @security_mode de sp_link_publication détermine comment les déclencheurs des abonnements de mise à jour immédiate exécutent des appels sur le serveur de publication. Dans SQL Server 2005, les options de ce paramètre sont les suivantes :

  • 0 : utilise l'authentification SQL Server avec la connexion spécifiée dans la procédure stockée en guise de nom d'utilisateur et de mot de passe.

  • 1 : utilise le contexte de sécurité (authentification SQL Server ou authentification intégrée de Windows) de l'utilisateur qui effectue la modification chez l'Abonné.

  • 2 : utilise la connexion de serveur lié existante, définie par l'utilisateur.

Dans les versions précédentes de SQL Server, l'option 0 était utilisée pour spécifier un appel de procédure distante dynamique (RPC, remote procedure call) de l'Abonné vers le serveur de publication plutôt qu'un serveur lié.

Modifications de comportement pour la réplication de fusion

Les modifications suivantes affectent la réplication de fusion.

Fonctionnalité

Description

Niveau de compatibilité de la publication

Dans les versions précédentes de SQL Server, le niveau de compatibilité était automatiquement augmenté lorsque vous activiez une fonctionnalité à un niveau supérieur. Dans SQL Server 2005, vous devez manuellement affecter la valeur 90RTM au niveau de compatibilité avant d'activer la fonctionnalité qui requiert ce niveau de compatibilité. Pour plus d'informations, consultez la section « Niveau de compatibilité pour les publications de fusion » de Utilisation de plusieurs versions de SQL Server dans une topologie de réplication.

Mesures compensatoires

Dans les versions précédentes de SQL Server, des mesures compensatoires étaient prises si des erreurs (telles que des violations de contrainte) survenaient au cours de la synchronisation. Dans certains cas, ce comportement est souhaitable, mais dans d'autres cas, il peut poser problème ; par exemple, une configuration incorrecte de l'Abonné générant une erreur peut entraîner l'annulation des modifications sur le serveur de publication et tous les autres Abonnés.

Dans SQL Server 2005, le paramètre @compensate_for_errors de sp_addmergearticle vérifie si des mesures compensatoires sont prises. Lorsqu'il a la valeur False (valeur par défaut), les mesures compensatoires sont désactivées ; toutefois, les erreurs demeurent consignées et les fusions ultérieures continueront de tenter d'appliquer les modifications. Bien que les données des lignes affectées semblent non convergentes, dès que vous réparez l'erreur, la modification peut être appliquée et les données convergent. Lorsque ce paramètre a la valeur True, toute modification ne pouvant pas être appliquée à un nœud durant la synchronisation se traduit par des mesures compensatoires qui annulent la modification sur tous les autres nœuds.

RemarqueRemarque
Si la table source d'un article est déjà publiée dans une autre publication, la valeur de @compensate_for_errors doit être la même pour les deux articles. Pour les abonnements par extraction de données chez les Abonnés exécutant SQL Server 2000 version 8.00.858 et antérieures (qui incluent le Service Pack 3), les mesures compensatoires sont prises, même si @compensate_for_errors a la valeur False.

Tables de conflits

Dans les versions précédentes de SQL Server, la réplication de fusion créait une table de conflit unique pour chaque article de table inclus dans une publication, avec un nom au format conflict_<ArticleName>. Dans SQL Server 2005, les informations sont contenues dans deux tables : MSmerge_conflicts_info et une table portant un nom au format MSmerge_conflict_<NomPublication>_<NomArticle>.

Nettoyage des métadonnées par rétention

SQL Server 2005 utilise le nettoyage des métadonnées par rétention, qui a été introduit dans le Service Pack 1 de SQL Server 2000. Les métadonnées sont supprimées régulièrement des tables système suivantes :

  • MSmerge_contents

  • MSmerge_tombstone

  • MSmerge_genhistory

  • Toutes les tables avant image, s'il en existe. Les tables avant image existent si l'option d'optimisation de la synchronisation @keep_partition_changes est activée dans la publication (pour plus d'informations sur cette option, consultez la section suivante).

Paramètre @keep_partition_changes

Dans la version précédente de SQL Server, la valeur False était attribuée par défaut au paramètre@keep_partition_changes, car ceci permet de stocker davantage de données sur le serveur de publication. Le paramètre a maintenant la valeur True si le niveau de compatibilité de la publication est 90RTM ou supérieur et le paramètre @use_partition_groups a la valeur False. Pour plus d'informations sur ces options, consultez Filtres de lignes paramétrés.

Ajouts de la communauté

AJOUTER
Afficher:
© 2014 Microsoft