Partager via


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

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

Nouveaux éléments déconseillés dans SQL Server 2012

Fonctionnalité

Description

RMO

L'API RMO est déconseillée. Générez plutôt vos nouvelles applications avec Transact-SQL

Réplication hétérogène

La réplication hétérogène sur les abonnés non SQL Server est déconseillée. Pour déplacer des données, créez des solutions à l'aide de la capture de données modifiées et de SSIS.

Publication Oracle

La publication Oracle est déconseillée. Pour déplacer des données, créez des solutions à l'aide de la capture de données modifiées et de SSIS.

Éléments déconseillés dans les versions antérieures

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

Les fonctionnalités suivantes, qui s'appliquent à tous les types de réplication, sont déconseillé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 :

  • Pour les publications de fusion qui sont partitionnées à l'aide de filtres paramétrés, nous vous recommandons d'utiliser des instantanés partitionnés, qui simplifient l'initialisation d'un grand nombre d'abonnements.

  • Dans le cas de publications qui ne sont pas partitionnées, vous pouvez initialiser un abonnement par le biais d'une sauvegarde.

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 déconseillé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 à 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é déconseillées. Utilisez plutôt la réplication de modification du schéma.

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.

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é déconseillé. L'abonnement à une publication en la recherchant 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éconseillé 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, DistributorNetwork et DistributorAddress des Agents de distribution et de fusion¹

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.

¹  Déconseillés dans SQL Server 2008.

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

Les fonctionnalités de réplication transactionnelle suivantes ont ɴé déconseillé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é déconseillée. 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 distribution maximale (propriété @max_distretention de sp_adddistributiondb).

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 replication support only au paramètre.

Abonnés ODBC

Utilisez plutôt OLE-DB pour les 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.

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 Synchroniser un abonnement par extraction (pull) et Synchroniser un abonnement par émission (push).

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éconseillé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.

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

¹  Déconseillés dans SQL Server 2008.

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

Les fonctionnalités de réplication de fusion suivantes ont été déconseillé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 Mise en miroir de bases de données et réplication (SQL Server).

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.

Option UPDATE multicolonne

Lorsque la réplication de fusion effectue une mise à jour, elle met à jour toutes les colonnes modifiées dans une instruction UPDATE et réinitialise les valeurs d'origine des colonnes non modifiées. 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 la 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.

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.

¹  Déconseillés dans SQL Server 2008.

Voir aussi

Concepts

Compatibilité descendante de la réplication