Modifications des comportements dans la réplication SQL Server 2005
Mis à jour : 14 avril 2006
Cette rubrique décrit les modifications apportées au comportement des fonctionnalités de réplication qui existaient dans Microsoft SQL Server 2000. Pour plus d'informations sur les améliorations apportées aux fonctionnalités de réplication, consultez Amélioration de la réplication.
Remarque : |
---|
Cette rubrique est disponible dans la documentation d'aide du programme d'installation et dans la documentation en ligne de SQL Server 2005. Les liens vers des rubriques qui s'affichent en gras dans la documentation d'aide du programme d'installation font référence à des rubriques qui sont exclusivement disponibles dans la documentation en ligne. |
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. Microsoft SQL Server 2005 permet 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 Considérations de sécurité pour la 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 Mise à niveau des bases de données répliquées et Dernières modifications dans la réplication SQL Server 2005. |
Gestionnaire de synchronisation Windows |
Dans les versions précédentes de SQL Server, 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.
Remarque : |
---|
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 :
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.
Remarque :
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_<PublicationName>_<ArticleName>.
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 SQL Server 2000 Service Pack 1. Les métadonnées sont régulièrement supprimées 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.
Voir aussi
Concepts
Compatibilité descendante de la réplication
Autres ressources
Amélioration de la réplication
Aide et Informations
Assistance sur SQL Server 2005
Historique des modifications
Version | Historique |
---|---|
14 avril 2006 |
|