Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
S’applique à :SQL Server
Azure SQL Managed Instance
Dans cette leçon, vous allez apprendre à créer le serveur lié et les itinéraires de l’instance cible du moteur de base de données à l’instance de l’initiateur. Exécutez ces étapes à partir d’une copie de Management Studio exécutée sur le même ordinateur que l’instance cible.
Procédures
Créer des références à des objets de l'initiateur
Copiez et collez le code suivant dans une fenêtre de l'éditeur de requête. Modifiez la
FROM FILEclause pour référencer le dossier dans lequel vous avez copié le fichier InstInitiatorCertificate.cer à l’étape 4 de la leçon 2. Puis, exécutez le code pour créer un utilisateur de l'initiateur et extraire le certificat de l'initiateur.USE InstTargetDB; GO CREATE USER InitiatorUser WITHOUT LOGIN; CREATE CERTIFICATE InstInitiatorCertificate AUTHORIZATION InitiatorUser FROM FILE = N'C:\storedcerts\$ampleSSBCerts\InstInitiatorCertificate.cer'; GO
Créer des itinéraires
Copiez et collez le code suivant dans une fenêtre de l'éditeur de requête. Remplacez la chaîne MyInitiatorComputer par le nom de l’ordinateur qui exécute votre instance de l’initiateur. Exécutez ensuite le code pour créer des itinéraires vers le service cible et le service initiateur, ainsi qu’une liaison de service distant qui associe InitiatorUser à l’itinéraire du service initiateur.
Les instructions suivantes
CREATE ROUTEsupposent qu’il n’existe aucun nom de service en double dans l’instance cible. Si plusieurs bases de données sur l’instance cible contiennent des services portant le même nom, utilisez laBROKER_INSTANCEclause pour spécifier la base de données sur laquelle vous souhaitez ouvrir une conversation.DECLARE @Cmd AS NVARCHAR (4000); SET @Cmd = N'USE InstTargetDB; CREATE ROUTE InstInitiatorRoute WITH SERVICE_NAME = N''//InstDB/2InstSample/InitiatorService'', ADDRESS = N''TCP://MyInitiatorComputer:4022'';'; EXECUTE (@Cmd); SET @Cmd = N'USE msdb CREATE ROUTE InstTargetRoute WITH SERVICE_NAME = N''//TgtDB/2InstSample/TargetService'', ADDRESS = N''LOCAL'''; EXECUTE (@Cmd); GO GRANT SEND ON SERVICE::[//TgtDB/2InstSample/TargetService] TO InitiatorUser; GO CREATE REMOTE SERVICE BINDING InitiatorBinding TO SERVICE N'//InstDB/2InstSample/InitiatorService' WITH USER = InitiatorUser; GO
Contenu connexe
- CRÉER UNE LIAISON DE SERVICE À DISTANCE (Transact-SQL)
- CREATE ROUTE (Transact-SQL)
- CRÉER UN UTILISATEUR (Transact-SQL)
- EXECUTE (Transact-SQL)
- sp_addlinkedserver (Transact-SQL)
- Mise en réseau et routage du Service Broker
- Mise en réseau et sécurité à distance
Étape suivante
Vous avez terminé de configurer la base de données cible pour prendre en charge une conversation Service Broker avec la base de données initiatrice. Ensuite, vous commencez une conversation dans la base de données de l’initiateur et envoyez un message de demande au service cible.