Mover aplicaciones de Service Broker

La forma habitual de mover una aplicación de Service Broker es mover la base de datos que contiene la aplicación a otra instancia. Muchos aspectos de la aplicación de Service Broker se mueven con la base de datos. Algunos aspectos deben volver a crearse o configurarse en la nueva ubicación.

La base de datos contiene los objetos de Service Broker, los procesos almacenados, los certificados, los usuarios y las rutas de salida de la aplicación. Todos estos elementos se mueven con la base de datos:

  • Debe configurar inicios de sesión para cualquier usuario con inicios de sesión que utilice la aplicación.
  • Dado que los certificados están incluidos en la base de datos donde se ha creado el certificado, se conservan cuando mueve una base de datos.
  • La mayoría de las bases de datos de Service Broker tiene una clave maestra de base de datos. Debe utilizar la contraseña de la clave maestra al adjuntar la base de datos en la nueva ubicación.

Además, debe actualizar los servicios que inician conversaciones con el servicio que mueve. En cada base de datos que contiene una ruta para el servicio que mueve, modifique la ruta para que utilice la nueva dirección de red.

Los comandos CREATE DATABASE y ALTER DATABASE contienen opciones para activar la entrega de mensajes de Service Broker en la base de datos restaurada y para establecer un identificador de instancia de broker distinto. Los identificadores de instancia de broker sólo deben estar en uso en una base de datos de la red al mismo tiempo. En general, no cambie el identificador de instancia cuando restaure una copia de seguridad que está pensada para ser idéntica a la base de datos original. Por ejemplo, no cambie el identificador de instancia de broker cuando adjunte una base de datos:

  • Con fines de recuperación.
  • Para crear un par reflejado.
  • Para configurar el trasvase de registros para un servidor en espera.

Cuando realice una copia de la base de datos, cambie el identificador de instancia de broker o asegúrese de que la entrega de mensajes de Service Broker está inactiva. Para obtener más información sobre las opciones para adjuntar bases de datos, vea CREATE DATABASE (Transact-SQL) y ALTER DATABASE (Transact-SQL). Para consultar instrucciones sobre cómo activar la entrega de mensajes de Service Broker en una base de datos, vea Cómo activar la entrega de mensajes de Service Broker en las bases de datos (Transact-SQL).

Las rutas de los mensajes entrantes no están incluidas en la base de datos que contiene el servicio. Si el servicio utiliza una ruta explicita de la base de datos msdb para enrutar los mensajes entrantes al servicio, debe volver a crear esta ruta cuando adjunte una base de datos en una instancia diferente.

Los extremos de Service Broker y la seguridad de transporte se aplican a la instancia en conjunto en lugar de a una base de datos específica. El hecho de adjuntar una base de datos a una nueva instancia no afecta a los extremos ni a la seguridad de transporte de esa instancia. Si el servicio envía o recibe mensajes a través de la red, debe asegurarse de que la nueva instancia dispone de un extremo de Service Broker y de que la seguridad de transporte para la instancia está configurada como requiere la aplicación.

Vea también

Tareas

Cómo activar la entrega de mensajes de Service Broker en las bases de datos (Transact-SQL)

Conceptos

Rutas
Enrutamiento de Service Broker

Otros recursos

ALTER DATABASE (Transact-SQL)
ALTER ROUTE (Transact-SQL)
CREATE DATABASE (Transact-SQL)
CREATE ENDPOINT (Transact-SQL)
Copiar bases de datos en otros servidores

Ayuda e información

Obtener ayuda sobre SQL Server 2005