Créer une publication à partir d'une base de données Oracle
Cette rubrique explique comment créer une publication à partir d’une base de données Oracle dans SQL Server 2014 en utilisant SQL Server Management Studio ou Transact-SQL.
Dans cette rubrique
Avant de commencer :
Pour créer une publication à partir d'une base de données Oracle à l'aide de :
Avant de commencer
Prérequis
- Avant de créer une publication, vous devez installer le logiciel Oracle sur le serveur de distribution Microsoft SQL Server et configurer la base de données Oracle. Pour plus d’informations, consultez Configurer un serveur de publication Oracle.
Utilisation de SQL Server Management Studio
Créez une publication transactionnelle ou d'instantané à partir d'une base de données Oracle à l'aide de l'Assistant Nouvelle publication.
La première fois que vous créez une publication à partir d'une base de données Oracle, vous devez identifier le serveur de publication Oracle sur le serveur de distribution SQL Server (ce ne sera plus nécessaire pour les publications suivantes effectuées à partir de la même base de données). L’identification du serveur de publication Oracle peut être effectuée à partir de l’Assistant Nouvelle publication ou de la boîte de dialogue Propriétés du serveur de distribution - <Serveur> de distribution. Cette rubrique affiche la boîte de dialogue Propriétés du serveur de distribution - <Serveur de distribution> .
Pour identifier le serveur de publication Oracle sur le serveur de distribution SQL Server
Dans SQL Server Management Studio, connectez-vous à l'instance SQL Server que le serveur de publication Oracle utilisera comme serveur de distribution puis développez le nœud du serveur.
Cliquez avec le bouton droit sur le dossier Réplication , puis cliquez sur Propriétés du serveur de distribution.
Dans la page Serveurs de publication de la boîte de dialogue Propriétés du serveur de distribution - <Serveur de distribution> , cliquez sur Ajouter, puis sur Ajouter un serveur de publication Oracle.
Dans la boîte de dialogue Se connecter au serveur , cliquez sur le bouton Options .
Dans l'onglet Connexion :
Entrez le nom de l'instance de base de données Oracle ou sélectionnez Parcourir dans la zone de liste déroulante Instance de serveur .
Sélectionnez Authentification standard Oracle (recommandé) ou Authentification Windows.
Si vous sélectionnez Authentification Windows: le serveur Oracle doit être configuré pour autoriser les connexions à l'aide des informations d'identification Windows (pour plus d'informations, consultez la documentation Oracle) et vous devez être actuellement connecté avec le même compte Microsoft Windows que celui spécifié pour le schéma utilisateur d'administration de réplication.
Si vous sélectionnez Authentification standard Oracle, entrez le nom de connexion et le mot de passe du schéma utilisateur d'administration de réplication créé sur le serveur de publication Oracle pendant la configuration.
Dans l'onglet Propriétés de la connexion , sélectionnez un type de serveur de publication ( Passerelle ou Complet).
L'option Complet a pour but de fournir un instantané et des publications transactionnelles avec le jeu complet de fonctionnalités prises en charge pour le serveur de publication Oracle. L'option Passerelle permet l'optimisation de la conception en améliorant les performances pour les cas où la réplication sert de passerelle entre les systèmes. Vous ne pouvez pas utiliser l'option Passerelle si vous envisagez de publier la même table dans plusieurs publications transactionnelles. Une table peut apparaître au maximum dans une publication transactionnelle et dans une ou plusieurs publications d'instantané si vous sélectionnez Passerelle.
Cliquez sur Se connecter, qui crée une connexion au serveur de publication Oracle et le configure pour la réplication. La boîte de dialogue Se connecter au serveur se ferme et vous êtes retourné à la boîte de dialogue Propriétés du serveur de distribution - <Serveur de distribution> .
Notes
En cas de problème lié à la configuration réseau, vous recevrez un message d'erreur à ce stade. Si vous rencontrez des difficultés pour vous connecter à la base de données Oracle, consultez la section « Connexion impossible du serveur de distribution SQL Server à l'instance de base de données Oracle » dans Troubleshooting Oracle Publishers.
Cliquez sur OK.
Pour créer une publication à partir d'une base de données Oracle
Connectez-vous à l'instance SQL Server que le serveur de publication Oracle utilisera comme serveur de distribution puis développez le nœud du serveur.
Développez le dossier Réplication .
Cliquez avec le bouton droit sur le dossier Publications locales , puis cliquez sur Nouvelle publication Oracle.
Dans la page Serveur de publication Oracle de l'Assistant Nouvelle publication, sélectionnez le serveur de publication Oracle. S'il ne s'affiche pas, cliquez sur Ajouter un serveur de publication Oracle, puis suivez les étapes décrites dans la procédure précédente.
Dans la page Type de publication , sélectionnez Publication d'instantané ou Publication transactionnelle.
Dans la page Articles , sélectionnez les objets de base de données à publier.
Retirez éventuellement des colonnes de table en développant une table et en désactivant la case à cocher d'une ou plusieurs colonnes. Cliquez sur Propriétés de l'article pour afficher et modifier les propriétés de l'article et spécifier, le cas échéant, d'autres mappages de types de données. Pour plus d’informations sur les mappages des types de données, consultez Spécifier des mappages de types de données pour un serveur de publication Oracle.
Dans la page Filtrer les lignes de la table , appliquez éventuellement des filtres pour publier un sous-ensemble de données d'une ou plusieurs tables.
Dans la page Agent d'instantané , désactivez Créer un instantané immédiatement uniquement si vous avez créé tous les objets et ajouté toutes les données requises dans la base de données d'abonnement.
Dans la page Sécurité de l'Agent , spécifiez des informations d'identification pour l'Agent d'instantané (pour toutes les publications) et l'Agent de lecture du journal (pour les publications transactionnelles). Les Agents s'exécutent et se connectent au serveur de distribution SQL Server à l'aide du contexte du compte Microsoft spécifié. Les Agents se connectent à la base de données Oracle avec le contexte du compte spécifié comme schéma utilisateur d'administration de réplication. Pour plus d’informations, consultez Configurer un serveur de publication Oracle.
Pour plus d'informations sur les autorisations requises par chaque Agent, consultez Replication Agent Security Model et Replication Security Best Practices.
Dans la page Actions de l'Assistant , créez éventuellement un script de la publication. Pour plus d'informations, voir Scripting Replication.
Dans la page Terminer l'Assistant , spécifiez un nom pour la publication.
Utilisation de Transact-SQL
Une fois la base de données Oracle configurée comme serveur de publication, vous pouvez créer une publication transactionnelle ou d’instantané de la même façon que vous le feriez à partir un serveur de publication Microsoft SQL Server, en utilisant des procédures stockées système.
Pour créer une publication Oracle
Configurez la base de données Oracle en tant que serveur de publication. Pour plus d’informations, consultez Configurer un serveur de publication Oracle.
S'il n'existe pas de serveur de distribution distant, configurez-en un. Pour plus d’informations, consultez Configure Publishing and Distribution.
Sur le serveur de distribution distant que le serveur de publication Oracle utilisera, exécutez sp_adddistpublisher (Transact-SQL). Spécifiez le nom TNS (Transparent Network Substrate) de l’instance de base de données Oracle pour @publisher et la valeur ou
ORACLE
ORACLE GATEWAY
pour @publisher_type.Specify
le mode de sécurité utilisé lors de la connexion entre le Serveur de publication Oracle et le serveur de distribution SQL Server distant parmi les modes suivants :Pour utiliser l’authentification Oracle Standard, valeur par défaut, spécifiez la valeur 0 pour @security_mode, la connexion du schéma d’utilisateur administratif de réplication que vous avez créé sur le serveur de publication Oracle pendant la configuration de @login et le mot de passe pour @password.
Important
Lorsque c'est possible, demande aux utilisateurs de fournir les informations d'identification au moment de l'exécution. Si vous stockez des informations d'identification dans un fichier de script, vous devez sécuriser le fichier pour empêcher tout accès non autorisé.
Pour utiliser l’authentification Windows, spécifiez la valeur 1 pour @security_mode.
Notes
Pour utiliser l'authentification Windows, le serveur Oracle doit être configuré pour autoriser les connexions à l'aide des informations d'identification Windows (pour plus d'informations, consultez la documentation Oracle) et vous devez être actuellement connecté avec le même compte Microsoft Windows que celui spécifié pour le schéma utilisateur d'administration de réplication.
Créez un travail de l'Agent de lecture du journal pour la base de données de publication.
Si vous ne savez pas si un travail de l’Agent de lecture du journal existe pour une base de données publiée, exécutez sp_helplogreader_agent (Transact-SQL) sur le serveur de distribution utilisé par le serveur de publication Oracle sur la base de données de distribution. Spécifiez le nom du serveur de publication Oracle pour @publisher. Si le jeu de résultats est vide, un travail de l'Agent de lecture du journal doit être créé.
Si un travail de l'Agent de lecture du journal existe déjà pour la base de données de publication, passez à l'étape 5.
Sur le serveur de distribution utilisé par le serveur de publication Oracle sur la base de données de distribution, exécutez sp_addlogreader_agent (Transact-SQL). Spécifiez les informations d’identification Windows sous lesquelles l’agent s’exécute pour @job_login et @job_password.
Notes
Le paramètre @job_login doit correspondre à la connexion fournie à l’étape 3. Ne fournissez pas d'informations de sécurité pour le serveur de publication. L'Agent de lecture du journal se connecte au serveur de publication à l'aide des informations de sécurité fournies à l'étape 3.
Sur le serveur de distribution sur la base de données de distribution, exécutez sp_addpublication (Transact-SQL) pour créer la publication. Pour plus d’informations, voir Create a Publication.
Sur le serveur de distribution sur la base de données de distribution, exécutez sp_addpublication_snapshot (Transact-SQL). Spécifiez le nom de publication utilisé à l’étape 4 pour @publication et les informations d’identification Windows sous lesquelles le Agent d'instantané s’exécute pour @job_name et @password. Pour utiliser l’authentification Oracle Standard lors de la connexion au serveur de publication, vous devez également spécifier la valeur 0 pour @publisher_security_mode et les informations de connexion Oracle pour @publisher_login et @publisher_password. Il s'ensuit la création d'un travail de l'Agent d'instantané pour la publication.
Voir aussi
Configurer un serveur de publication Oracle
Publier des données et des objets de base de données
Configurer le travail d'un jeu de transactions pour un serveur de publication Oracle (programmation Transact-SQL de la réplication)
Vue d’ensemble de la publication Oracle
Script pour l’attribution d’autorisations Oracle