Je souhaite activer et désactiver Service Broker pour Amazon Relational Database Service (Amazon RDS) SQL Server.
Brève description
Service Broker est pris en charge pour Amazon RDS, mais les points de terminaison Service Broker ne le sont pas sur Amazon RDS. Pour plus d’informations sur Service Broker, consultez Service Broker sur le site Web de Microsoft.
Résolution
Activez Service Broker
Lorsque vous activez Service Broker, Amazon RDS demande le verrouillage de la base de données.
Remarque : avant d’activer Service Broker, veillez à fermer toutes les connexions ouvertes à la base de données.
Procédez comme suit :
-
Vérifiez si Service Broker est activé :
select name,is_broker_enabled from sys.databases
where name= [YourDB]
-
Si Service Broker n’est pas activé, générez un nouveau Service Broker :
ALTER DATABASE [YourDB] SET NEW_BROKER;
GO
-
Activez Service Broker sur une base de données existante :
ALTER DATABASE [YourDB] SET ENABLE_BROKER;
GO
Pour les déploiements multi-AZ
Procédez comme suit :
-
Exécutez la commande suivante :
ALTER DATABASE [YourDB] SET PARTNER OFF;
GO
-
Réactivez Service Broker :
ALTER DATABASE [YourDB] SET ENABLE_BROKER WITH ROLLBACK IMMEDIATE
Désactiver Service Broker
Pour désactiver Service Broker sur une base de données existante, exécutez la commande suivante :
ALTER DATABASE [YourDB] SET DISABLE_BROKER;
GO
Activez Service Broker pour une base de données qui fait déjà partie d’un groupe de disponibilité
Vous ne pouvez pas activer Service Broker pour une base de données qui fait déjà partie d’un groupe de disponibilité. Vous recevez une erreur similaire à la suivante :
ALTER DATABASE [test] SET PARTNER OFF;
GO
Msg 1416, Level 16, State 1, Line 1
Database "test" is not configured for database mirroring.
Convertissez plutôt la base de données RDS en une seule zone de disponibilité, puis activez Service Broker :
-
Convertissez votre base de données RDS en un seul AZ.
-
Activez Service Broker :
ALTER DATABASE [DBName ] SET NEW_BROKER;
GO
ALTER DATABASE [DBName ] SET ENABLE_BROKER;
GO
-
Vérifiez que Service Broker est activé :
select name,is_broker_enabled from sys.databases
where name= [DBName ]
-
Reconvertissez votre base de données RDS en Multi-AZ.
Informations connexes
Amazon RDS for Microsoft SQL Server
Migration de bases de données Microsoft SQL Server vers le Cloud AWS