Fonctionnalités désapprouvées dans la réplication SQL Server

Cette rubrique décrit les fonctionnalités de réplication désapprouvées qui sont toujours disponibles dans SQL Server 2008. Il est prévu que ces fonctionnalités soient supprimées dans une prochaine version de SQL Server. Les fonctions désapprouvées ne doivent pas être utilisées dans de nouvelles applications.

Fonctionnalités désapprouvées qui affectent tous les types de réplications

Les fonctionnalités suivantes, qui s'appliquent à tous les types de réplications, sont abandonnées dans SQL Server 2005 ou SQL Server 2008.

Fonctionnalité

Description

Abonnements pouvant être attachés

Cette fonctionnalité peut être utilisée lors du déploiement d'un grand nombre d'abonnements par extraction de données, ce qui est relativement courant dans la réplication de fusion. Nous vous recommandons d'utiliser les méthodes suivantes plutôt que les abonnements pouvant être attachés :

Dans les deux cas, vous pouvez automatiser la création d'un grand nombre d'abonnements à l'aide de scripts : créez un abonnement unique, créez un script à partir de cet abonnement, modifiez le script pour chaque Abonné et appliquez-le à chaque Abonné pour créer un abonnement. Pour plus d'informations, consultez Création de scripts de réplication.

Inscription de l'Abonné

La procédure stockée de sp_addsubscriber est abandonnée. Il n'est plus requis d'inscrire explicitement un Abonné sur le serveur de publication.

Objets SQL-DMO (Distributed Management Objects)

Le code existant continue de fonctionner, mais SQL-DMO ne prend pas en charge les nouvelles fonctionnalités de SQL Server 2005 et SQL Server 2008. Utilisez plutôt Replication Management Objects (RMO). Pour plus d'informations, consultez Concepts liés à RMO (Replication Management Objects).

Modifications du schéma à l'aide de sp_repladdcolumn et sp_repldropcolumn

Les procédures stockées sp_repladdcolumn et sp_repldropcolumn ont été abandonnées. Utilisez plutôt la réplication de modification du schéma. Pour plus d'informations, consultez Modification du schéma dans les bases de données de publication.

Les procédures stockées ne peuvent pas être utilisées pour ajouter ou supprimer des colonnes avec des types de données introduits dans SQL Server 2005 et versions ultérieures : types xml, varchar(max), nvarchar(max), varbinary(max) ou types définis par l'utilisateur (UDT), datetime2, time, datetimeoffset, hierarchyid, geometry et geography.

Validation de la somme de contrôle

La validation de somme de contrôle ne doit pas être utilisée. Utilisez la validation de somme de contrôle binaire. Vous pouvez également utiliser la validation du nombre de lignes pour tous les abonnés de SQL Server, y compris ceux qui s'abonnent aux publications des serveurs de publication Oracle. Pour plus d'informations, consultez Validation des données répliquées.

Ajout de publications à Active Directory

L'ajout d'une publication à l'annuaire Active Directory à l'aide du paramètre @add_to_active_directory de sp_addpublication ou sp_addmergepublication a été abandonné. L'abonnement à une publication en la localisant dans Active Directory a été désapprouvé.

Paramètre -UseInprocLoader

Ce paramètre de l'Agent de distribution et de l'Agent de fusion est désapprouvé parce qu'il n'est pas compatible avec le type de données XML. Si vous ne répliquez pas de données XML, ce paramètre peut être utilisé. Pour plus d'informations, consultez Agent de distribution de réplication et Agent de fusion de réplication.

Paramètres PublisherAddress, PublisherNetwork, DistributorNetworket DistributorAddress dans les Agents de fusion et de distribution¹

Ces paramètres sont utilisés pour spécifier l'adresse IP lors de la connexion au serveur de publication ou de distribution. Le sous-système de réplication utilisant des noms de serveurs pour vérifier la connexion, nous vous recommandons d'utiliser l'alias au niveau des protocoles clients pour mapper l'adresse IP au nom du serveur et d'utiliser le nom du serveur dans les agents.

¹  Abandonnés dans SQL Server 2008.

Fonctionnalités désapprouvées de la réplication transactionnelle

Les fonctionnalités de réplication transactionnelle suivantes ont été abandonnées dans SQL Server 2005 ou SQL Server 2008.

Fonctionnalité

Description

Expiration des abonnements aux publications transactionnelles

La propriété @retention de sp_addpublication a été abandonné. Les abonnements restent marqués comme inactifs et doivent être réinitialisés s'ils n'ont pas été synchronisés durant la période de rétention de la distribution maximale (propriété @max_distretention de sp_adddistributiondb). Pour plus d'informations sur les périodes de rétention, consultez Expiration et désactivation des abonnements.

Abonnements « No sync » aux publications transactionnelles

Un abonnement est un abonnement « no sync » si la valeur none est affectée au paramètre @sync_type de sp_addsubscription ou sp_addpullsubscription. Si vous souhaitez spécifier que le schéma et les données nécessaires sont déjà présents dans la base de données d'abonnement, affectez plutôt la valeur Prise en charge de la réplication uniquement au paramètre. Pour plus d'informations, consultez Initialisation d'un abonnement transactionnel sans capture instantanée.

Abonnés ODBC

Utilisez plutôt OLE-DB pour les Abonnés non-SQL Server. Pour plus d'informations sur les Abonnés pris en charge, consultez Abonnés non-SQL Server.

Abonnements transformables

Cette fonctionnalité est disponible via l'interface des procédures stockées, mais elle n'est plus prise en charge dans l'interface utilisateur. L'utilisation de la fonctionnalité nécessite l'installation de DTS (Data Transformation Services) de SQL Server 2000. Pour plus d'informations, consultez Compatibilité descendante d'Integration Services.

Abonnements pouvant être mis à jour incluant les mises à jour immédiate et en attente avec des publications de captures instantanées et transactionnelles¹

Nous vous recommandons d'utiliser à la place la réplication transactionnelle d'égal à égal. Pour plus d'informations, consultez Réplication transactionnelle d'égal à égal.

Contrôle ActiveX de distribution

Ce contrôle vous permet d'incorporer l'Agent de distribution dans les applications. Utilisez plutôt RMO. Pour plus d'informations, consultez Procédure : synchroniser un abonnement par extraction de données (pull) (Programmation RMO) et Procédure : pour synchroniser un abonnement d'envoi de données (programmation RMO).

Interface de distribution de réplication

Dans SQL Server 2000, l'interface de distribution de réplication fournissait une interface permettant de stocker les transactions répliquées dans la base de données de distribution sur le serveur de distribution. Cette interface pouvait être utilisée pour activer la publication à partir d'une base de données non-SQL Server (une programmation personnalisée supplémentaire était requise pour suivre les modifications sur le serveur de publication). La prise en charge de cette fonctionnalité a été désapprouvée, mais le code existant continue de fonctionner sur un serveur mis à niveau à partir de SQL Server 2000. Pour plus d'informations, consultez « Replication Distributor Interface Reference » dans la documentation en ligne de SQL Server 2000.

SQL Server 2005 et SQL Server 2008 prennent en charge la publication à partir des bases de données Oracle sans programmation personnalisée. Pour plus d'informations, consultez Présentation de la publication Oracle.

Réplication sur des abonnés Oracle 8 et depuis des serveurs de publication Oracle 8¹

Pour plus d'informations sur les versions Oracle prises en charge, consultez Présentation de la publication Oracle et Abonnés Oracle.

¹  Abandonnés dans SQL Server 2008.

Fonctionnalités désapprouvées de la réplication de fusion

Les fonctionnalités de réplication de fusion suivantes ont été abandonnées dans SQL Server 2005 ou SQL Server 2008.

Fonctionnalité

Description

Partenaires de synchronisation différents

La fonctionnalité de partenaires de synchronisation différents vous permet de spécifier un serveur de publication différent avec lequel un Abonné peut se synchroniser.

Dans SQL Server 2005 et SQL Server 2008, nous vous recommandons d'utiliser la réplication de fusion associée à la mise en miroir de bases de données, à la place des partenaires de synchronisation différents. Pour plus d'informations, consultez Réplication et mise en miroir des bases de données.

Abonnements « No sync » aux publications de fusion1

Un abonnement est un abonnement « no sync » si la valeur none est affectée au paramètre @sync_type de sp_addmergesubscription ou sp_addmergepullsubscription. Ce type d'abonnement n'est pas recommandé pour une réplication de fusion.

Contrôle ActiveX de fusion

Ce contrôle vous permet d'incorporer l'Agent de fusion dans les applications. Utilisez plutôt RMO. Pour plus d'informations, consultez Procédure : synchroniser un abonnement par extraction de données (pull) (Programmation RMO) ou Procédure : pour synchroniser un abonnement d'envoi de données (programmation RMO).

Option UPDATE multicolonne

Lorsque la réplication de fusion effectue une mise à jour, elle met à jour toutes les colonnes modifiées dans une seule instruction UPDATE et réaffecte aux colonnes non modifiées leur valeur d'origine. Elle peut également émettre plusieurs instructions UPDATE, avec une instruction UPDATE pour chaque colonne modifiée. L'instruction UPDATE multicolonne est généralement plus efficace.

Dans les versions de SQL Server antérieures à SQL Server 2005, nous recommandons de spécifier une valeur false pour l'option de l'article @fast_multicol_updateproc dans les cas où une mise à jour multicolonne (une instruction UPDATE unique) peut être moins efficace :

  • La plupart des mises à jour impliquent un nombre limité de colonnes.

  • La maintenance d'un index sur des colonnes non modifiées est lourde, car ces colonnes sont redéfinies à chaque mise à jour.

Grâce aux performances accrues de SQL Server, cette option n'est plus requise pour ces cas de figure.

Paramètre -ParallelUploadDownload¹

Ce paramètre de l'Agent de fusion est utilisé pour charger et télécharger simultanément les modifications dans une session de réplication de fusion. S'il permet des gains de performance, ceux-ci restent dépendants de la quantité de métadonnées à transférer sur le réseau.

propriété @allow_partition_realignment dans sp_addmergepublication¹

Ce paramètre est utilisé pour contrôler les opérations de suppression qui doivent être envoyées aux Abonnés lorsqu'une ligne est déplacée de la partition de l'Abonné.

Paramètre -ExchangeType¹

Ce paramètre est utilisé pour contrôler si l'Agent de fusion est en phase de chargement, de téléchargement, ou les deux à la fois. Sa valeur par défaut, 3, permet d'effectuer le chargement et le téléchargement. Nous déconseillons le chargement uniquement, car il ne permet pas de répliquer les modifications de schéma ou les processus d'initialisation. La fonctionnalité de téléchargement uniquement peut être obtenue en utilisant @subscriber_upload_options pour un article. Pour plus d'informations, consultez sp_addmergearticle (Transact-SQL).

Propriété @delete_tracking dans sp_addmergearticle¹

Cette propriété est utilisée pour arrêter le suivi des suppressions lorsque celles-ci doivent être envoyées au serveur de publication ou à l'Abonné. Cela peut être implémenté via DeleteHandler dans le BusinessLogicModule. Pour plus d'informations, consultez Exécution de la logique métier lors de la synchronisation de fusion.

Enregistrements logiques¹

Cette fonctionnalité est utilisée pour envoyer un ensemble de lignes connexes dans une transaction unique. Dans la plupart des cas, l'utilisation de cette fonctionnalité se traduit par une baisse importante des performances en matière de réplication. Pour plus d'informations, consultez Regroupements des modifications apportées à des lignes connexes à l'aide d'enregistrements logiques.

¹  Abandonnés dans SQL Server 2008.