Partager via


Abonnés non-SQL Server

Les abonnés non-SQL Server suivants peuvent s'abonner aux publications de capture instantanée et transactionnelle à l'aide d'abonnements par envoi de données (push). Les abonnements sont pris en charge pour les deux versions les plus récentes de chaque base de données listée, à l'aide de la version la plus récente du fournisseur OLE DB listé.

Base de données

Système d'exploitation

Fournisseur

Oracle

Toute plateforme compatible avec Oracle

Fournisseur OLE DB Oracle (fourni par Oracle)

IBM DB2

MVS, AS400, Unix, Linux, Windows sauf 9.x

Fournisseur OLE DB du serveur HIS Microsoft (Host Integration Server)

Pour plus d'informations sur la création d'abonnements à Oracle et IBM DB2, consultez Abonnés Oracle et Abonnés IBM DB2.

Règles des abonnés non-SQL Server

Retenez les règles suivantes lors de la réplication sur des abonnés non-SQL Server.

Considérations générales

  • La réplication prend en charge la publication des tables et des vues indexées vers des Abonnées non SQL Server (les vues indexées ne peuvent pas être répliquées en tant que telles).

  • Lors de la création d'une publication dans l'Assistant Nouvelle publication et de son activation pour les abonnés non-SQL Server à l'aide de la boîte de dialogue Propriétés de la publication, le propriétaire de tous les objets dans la base de données d'abonnement n'est pas spécifié pour les abonnés non-SQL Server, alors qu'il est défini en tant que propriétaire de l'objet correspondant dans la base de données de publication pour les abonnés MicrosoftSQL Server.

  • Si une publication a des abonnés SQL Server et non-SQL Server, la publication doit être activée pour les abonnés non-SQL Server avant qu'un abonnement aux abonnés SQL Server ne soit créé.

  • Par défaut, les scripts générés par l'Agent de capture instantanée pour les abonnés non-SQL Server utilisent des identificateurs sans guillemets dans la syntaxe CREATE TABLE. Ainsi, une table publiée nommée « test » est répliquée comme « TEST ». Pour utiliser la même casse que la table dans la base de données de publication, utilisez le paramètre -QuotedIdentifier pour l'Agent de distribution. Le paramètre -QuotedIdentifier doit également être utilisé si les noms d'objets publiés (tables, colonnes et contraintes) comportent des espaces ou des mots réservés dans la version de la base de données au niveau de l'Abonné non SQL Server. Pour plus d'informations sur ce paramètre, consultez Agent de distribution de réplication.

  • Le compte sous lequel s'exécute l'Agent de distribution doit disposer de droits d'accès au répertoire d'installation du fournisseur OLE DB.

  • Pour les abonnés non-SQL Server, l'Agent de distribution utilise par défaut une valeur de [(destination par défaut)] pour la base de données d'abonnement (le paramètre -SubscriberDB pour l'Agent de distribution) :

  • Si le serveur de distribution SQL Server est exécuté sur une plateforme 64 bits, vous devez utiliser la version 64 bits du fournisseur OLE DB approprié.

  • La réplication déplace les données en format Unicode quelles que soient les pages de classement/de codes utilisées sur le serveur de publication et sur l'Abonné. Il est recommandé de choisir une page de classement/de codes compatible lors de la réplication entre serveurs de publication et abonnés.

  • Si un article est ajouté ou supprimé d'une publication, les abonnements aux abonnés non-SQL Server doivent être réinitialisés.

  • Les seules contraintes prises en charge pour tous les Abonnés non SQL Server sont : NULL et NOT NULL. Les contraintes de clés primaires sont répliquées en tant qu'index uniques.

  • La valeur NULL est traitée différemment par différentes bases de données, ce qui affecte la façon dont une valeur vide, une chaîne vide ou une valeur NULL est représentée. Cela affecte à son tour le comportement des valeurs insérées dans des colonnes où des contraintes uniques sont définies. Par exemple, Oracle autorise plusieurs valeurs NULL dans une colonne considérée comme unique, alors de SQL Server n'autorise qu'une seule valeur NULL dans une colonne unique.

    Un autre facteur est la façon dont les valeurs NULL, les chaînes vides ou les valeurs vides sont traitées lorsque la colonne est définie comme NOT NULL. Pour plus d'informations sur la résolution de ce problème pour les abonnés Oracle, consultez Abonnés Oracle.

  • SQL Server Management Studio ne prend pas en charge l'activation des publications SQL Server 2000 pour les Abonnés non-SQL Server. Pour activer une publication SQL Server 2000 pour des Abonnés non-SQL Server, utilisez l'Assistant Création de publication, disponible dans SQL Server 2000 Enterprise Manager. Dans l'Assistant Création de publication, sur la page Spécifier les types d'abonnés, sélectionnez Sources de données hétérogènes comme Oracle ou Microsoft Access.

Se conformer aux conditions requises de la base de données de l'Abonné.

  • Le schéma et les données publiés doivent être conformes aux conditions requises de la base de données sur l'Abonné. Par exemple, si la taille maximale de ligne d'une base de données non-SQL Server est plus petite que pour une base de données SQL Server, vous devez vous assurer que le schéma et les données publiés ne dépassent pas cette taille.

  • Les tables répliquées sur des abonnés non-SQL Server adopteront les conventions d'affectation des noms de table de la base de données au niveau de l'Abonné.

  • Si vous modifiez un schéma publié, ces modifications ne sont répercutées que sur les abonnés SQL Server. Pour plus d'informations sur les modifications d'un schéma, consultez Modification du schéma dans les bases de données de publication.

Prise en charge de la fonctionnalité de réplication

  • SQL Server offre deux types d'abonnements : les abonnements par émission de données et les abonnements par extraction. Les abonnés non-SQL Server doivent utiliser les abonnements par envoi de données (push), dans lesquels l'Agent de distribution est exécuté sur le serveur de distribution SQL Server.

  • SQL Server offre deux formats de captures instantanées : le mode bcp natif et le mode caractère. Les abonnés non-SQL Server nécessitent des captures instantanées en mode caractère.

  • Les abonnés non-SQL Server ne peuvent pas utiliser d'abonnements mis à jour immédiatement ou mis à jour en attente, et ne peuvent pas être des nœuds dans une topologie d'égal à égal.

  • Les abonnés non-SQL Server ne peuvent pas être initialisés automatiquement à partir d'une sauvegarde.