Spostamento delle applicazioni di Service Broker

Per spostare un'applicazione di Service Broker è sufficiente spostare il database contenente l'applicazione in un'altra istanza. Insieme al database vengono spostati molti aspetti dell'applicazione, mentre alcuni devono essere ricreati o riconfigurati nella nuova posizione.

Il database contiene oggetti di Service Broker, stored procedure, certificati, utenti e route in uscita per l'applicazione, che vengono spostati insieme al database:

  • È necessario configurare account di accesso per tutti gli utenti con account di accesso utilizzati dall'applicazione.
  • I certificati si trovano nel database in cui sono stati creati e vengono mantenuti quando il database viene spostato.
  • Nella maggior parte dei database di Service Broker è disponibile una chiave master del database. Quando si collega il database nella nuova posizione, è necessario utilizzare la password per la chiave master.

È inoltre necessario aggiornare i servizi che avviano le conversazioni con il servizio che si desiera spostare. In tutti i database che contengono una route per il servizio che si desidera spostare, modificare la route in modo da utilizzare il nuovo indirizzo di rete.

Le opzioni dei comandi CREATE DATABASE e ALTER DATABASE consentono di attivare il recapito dei messaggi di Service Broker nel database ripristinato e di impostare un identificatore dell'istanza di Service Broker diverso, che deve essere utilizzato da un solo database in rete alla volta. In genere non è necessario modificare l'identificatore dell'istanza quando si ripristina un backup che deve corrispondere esattamente al database originale, né quando si collega un database, ad esempio:

  • A scopo di recupero.
  • Per creare una coppia di server con mirroring.
  • Per configurare la distribuzione dei log per un server di standby.

Quando si crea una copia del database, modificare l'identificatore dell'istanza di Service Broker o verificare che il recapito dei messaggi di Service Broker sia inattivo. Per ulteriori informazioni sulle opzioni per il collegamento di database, vedere CREATE DATABASE (Transact-SQL) e ALTER DATABASE (Transact-SQL). Per istruzioni sull'attivazione del recapito dei messaggi di Service Broker in un database, vedere Procedura: Attivazione del recapito dei messaggi di Service Broker nei database (Transact-SQL).

Le route per i messaggi in arrivo non sono incluse nel database che contiene il servizio. Se per il routing dei messaggi in arrivo per un servizio viene utilizzata una route esplicita nel database msdb, quando si collega il database in un'istanza diversa è necessario ricreare la route.

Gli endpoint e la protezione del trasporto di Service Broker vengono applicati all'istanza nel suo complesso anziché a un database specifico. Il collegamento di un database a una nuova istanza non influisce sugli endpoint o sulla protezione del trasporto per quell'istanza. Se il servizio invia o riceve messaggi in rete, è necessario verificare che per la nuova istanza sia disponibile un endpoint di Service Broker e sia configurata la protezione del trasporto secondo i requisiti dell'applicazione.

Vedere anche

Attività

Procedura: Attivazione del recapito dei messaggi di Service Broker nei database (Transact-SQL)

Concetti

Route
Routing di Service Broker

Altre risorse

ALTER DATABASE (Transact-SQL)
ALTER ROUTE (Transact-SQL)
CREATE DATABASE (Transact-SQL)
CREATE ENDPOINT (Transact-SQL)
Copia di database in altri server

Guida in linea e informazioni

Assistenza su SQL Server 2005