Eseguire la migrazione di un'installazione di Reporting Services (modalità nativa)

Questo articolo fornisce istruzioni dettagliate su come migrare una delle versioni supportate seguenti di una distribuzione di Reporting Services in modalità nativa a una nuova istanza di SQL Server Reporting Services:

  • SQL Server 2016 (13.x)

  • SQL Server 2014 (12.x)

  • SQL Server 2012 (11.x)

  • SQL Server 2008 R2 (10.50.x)

  • SQL Server 2008 (10.0.x)

  • SQL Server 2014 (12.x)

  • SQL Server 2012 (11.x)

  • SQL Server 2008 R2 (10.50.x)

  • SQL Server 2008 (10.0.x)

Per informazioni sulla migrazione di una distribuzione di Reporting Services in modalità SharePoint, vedere Eseguire la migrazione di un'installazione di Reporting Services (modalità SharePoint).

Per migrazione si intende lo spostamento di file di dati di un'applicazione a una nuova istanza di SQL Server. Di seguito sono elencati i motivi comuni per cui eseguire la migrazione dell'installazione:

  • Si dispone di una distribuzione su vasta scala o i requisiti di attività sono elevati.

  • Si intende modificare l'hardware o la topologia dell'installazione.

  • Si verifica un problema che blocca l'aggiornamento.

Panoramica sulla migrazione della modalità nativa

Il processo di migrazione di Reporting Services include passaggi manuali e automatizzati. Le attività seguenti fanno parte della migrazione del server di report:

  • Eseguire il backup dei file di database, di applicazione e di configurazione.

  • Eseguire il backup della chiave di crittografia.

  • Installazione di una nuova istanza di SQL Server. Se si usa lo stesso hardware, è possibile installare SQL Server side-by-side con l'installazione esistente se è una delle versioni supportate.

    Suggerimento

    Un'installazione side-by-side potrebbe richiedere l'installazione di SQL Server come istanza denominata.

  • Spostare il database del server di report e gli altri file dell'applicazione dall'installazione esistente alla nuova installazione di SQL Server.

  • Spostare tutti i file dell'applicazione personalizzata nella nuova installazione.

  • Configurare il server di report.

  • Modificare RSReportServer.config per includere tutte le impostazioni personalizzate dall'installazione precedente.

  • Facoltativamente, configurare elenchi di controllo di accesso (ACL) personalizzati per il nuovo gruppo di servizi Windows per Reporting Services.

  • Rimuovere le applicazioni e gli strumenti inutilizzati dopo avere verificato che la nuova istanza è completamente operativa.

Sono presenti restrizioni sulle edizioni di SQL Server che ospitano il database del server di report. Rivedere l’articolo seguente se si riutilizza un database del server di report creato in un'installazione precedente.

Nome fisso del database

Non è possibile rinominare il database del server di report. poiché l'identità del database viene registrata nelle stored procedure del server di report al momento della creazione del database stesso. La ridenominazione dei database primari o temporanei del server di report causa errori durante l'esecuzione delle stored procedure, invalidando l'installazione del server di report.

Se il nome del database dell'installazione esistente non è appropriato per la nuova installazione, è consigliabile creare un nuovo database con il nome desiderato, quindi caricare i dati dell'applicazione esistenti utilizzando le tecniche seguenti:

  • Scrivere uno script Visual Basic per chiamare i metodi SOAP del servizio Web ReportServer per copiare i dati tra database. Lo script può essere eseguito mediante l'utilità RS.exe. Per altre informazioni su questo approccio, vedere Script e PowerShell con Reporting Services.

  • Scrivere codice che chiama il provider Windows Management Instrumentation (WMI) per copiare dati tra database. Per altre informazioni su questo approccio, vedere Accedere al provider WMI per Reporting Services.

  • Se il numero di elementi non è elevato, è possibile ripubblicare report e origini dati condivise da Progettazione report, Progettazione modelli e Generatore report nel nuovo server di report. Ricreare le assegnazioni di ruolo, le sottoscrizioni, le pianificazioni condivise, le pianificazioni degli snapshot del report, le proprietà personalizzate impostate nei report. È anche possibile ricrearli in altri elementi, sicurezza degli elementi del modello e proprietà impostate nel server di report. È necessario sapere che la cronologia del report e i dati del log di esecuzione del report andranno persi se si eseguono queste azioni.

Prima di iniziare

Anche quando si esegue la migrazione anziché l'aggiornamento dell'installazione, l'esecuzione di Preparazione aggiornamento nell'installazione esistente consente di identificare qualsiasi problema che potrebbe interessare la migrazione. Questo passaggio è particolarmente utile se si esegue la migrazione di un server di report che non è stato installato o configurato personalmente. L'esecuzione di Preparazione aggiornamento consente di scoprire quali impostazioni personalizzate potrebbero non essere supportate in una nuova installazione di SQL Server.

È anche necessario considerare diverse importanti modifiche introdotte in SQL Server Reporting Services, che influiscono sulla migrazione dell'installazione:

  • Il portale Web ha sostituito Gestione report.

  • Per SQL Server 2008 (10.0.x) e versioni più recenti, IIS non è più un prerequisito. Se si esegue la migrazione di un'installazione del server di report a un nuovo computer, non è necessario aggiungere il ruolo del server Web. I passaggi per la configurazione degli URL e dell'autenticazione, inoltre, differiscono dalla versione precedente, come le tecniche e gli strumenti per la diagnosi e la risoluzione dei problemi.

  • Il servizio Web ReportServer, il portale Web e il servizio Windows ReportServer vengono eseguiti nello stesso account. Tutte e tre le applicazioni leggono le impostazioni di configurazione dal file RSReportServer.config.

  • Il portale Web e SQL Server Management Studio sono stati progettati per rimuovere le funzionalità sovrapposte. Ogni strumento supporta un set di attività distinto.

  • I filtri ISAPI non sono supportati in SQL Server 2008 (10.0.x) Reporting Services e versioni successive. Se si utilizzano filtri ISAPI, è necessario riprogettare la soluzione per la creazione di report prima di procedere alla migrazione.

  • Le restrizioni relative agli indirizzi IP non sono supportate in SQL Server 2008 (10.0.x) Reporting Services e versioni successive. Se si utilizzano le restrizioni degli indirizzi IP, è necessario riprogettare la soluzione per la creazione di report prima di procedere alla migrazione o utilizzare una tecnologia quale un firewall, un router o la conversione degli indirizzi di rete (NAT, Network Address Translation) per configurare indirizzi che non possono accedere al server di report.

  • I certificati Transport Layer Security (TLS), noti in precedenza come Secure Sockets Layer (SSL), non sono supportati in SQL Server Reporting Services 2008 (10.0.x) e versioni successive. Se si usano certificati TLS client, è necessario riprogettare la soluzione per la creazione di report prima di procedere alla migrazione.

  • Se si usa un tipo di autenticazione diverso dall'autenticazione integrata di Windows, è necessario aggiornare l'elemento <AuthenticationTypes> nel file RSReportServer.config con un tipo di autenticazione supportato. I tipi di autenticazione supportati sono NTLM, Kerberos, Negotiate e Basic. Le autenticazioni anonima, .NET Passport e Digest non sono supportate in SQL Server Reporting Services 2008 (10.0.x) e versioni successive.

  • Se si usano fogli di stile CSS personalizzati nell'ambiente di report, la migrazione non può essere eseguita e sarà necessario spostarli manualmente in seguito alla migrazione.

Per altre informazioni sulle modifiche apportate in SQL Server Reporting Services, vedere la documentazione relativa a Gestione spazio aggiornamenti e Novità di SQL Server Reporting Services (SSRS).

Backup di file e dati

Prima di installare una nuova istanza di Reporting Services, verificare di avere eseguito il backup di tutti i file nell'installazione corrente.

  1. Eseguire il backup della chiave di crittografia per il database del server di report. Questo passaggio rappresenta una fase critica per la corretta esecuzione della migrazione. In un passaggio successivo del processo di migrazione sarà necessario ripristinare la chiave di crittografia per il server di report per ottenere di nuovo l'accesso ai dati crittografati. Per eseguire il backup della chiave, usare lo strumento Gestione configurazione del server di report.

  2. Eseguire il backup del database del server di report usando uno dei metodi supportati per il backup di un database di SQL Server. Per altre informazioni, vedere le istruzioni su come eseguire il backup del database del server di report in Spostamento di database del server di report in un altro computer (modalità nativa SSRS).

  3. Eseguire il backup dei file di configurazione del server di report. I file di cui eseguire il backup includono:

    1. RSReportServer.config

    2. Rswebapplication.config

    3. Rssrvpolicy.config

    4. Rsmgrpolicy.config

    5. Reportingservicesservice.exe.config

    6. Web.config per l'applicazione ASP.NET del server di report.

    7. Machine.config per ASP.NET se è stato modificato per le operazioni del server di report.

Installare SQL Server Reporting Services

Installare una nuova istanza del server di report in modalità "solo file" per poterla configurare per l'utilizzo di valori non predefiniti. Per l'installazione da riga di comando, usare l'argomento FilesOnly. Nell'Installazione guidata selezionare l'opzione Installa senza configurare il server di report.

Selezionare uno dei collegamenti seguenti per visualizzare istruzioni sull'installazione di una nuova istanza di Reporting Services:

Spostamento del database del server di report

Il database del server di report contiene report pubblicati, modelli, origini dati condivise, pianificazioni, risorse, sottoscrizioni e cartelle, insieme a proprietà di sistema e di elementi e autorizzazioni per l'accesso al contenuto del server di report.

Se la migrazione include un'istanza diversa del motore di database, è necessario spostare il database del server di report nella nuova istanza del motore di database. Se si usa la stessa istanza del motore di database, passare alla sezione Spostamento di estensioni o di assembly personalizzati.

Per spostare il database del server di report, seguire questa procedura:

  1. Scegliere l'istanza del motore di database da usare. SQL Server Reporting Services richiede l'uso di una delle versioni seguenti per ospitare il database del server di report:

    • SQL Server 2016 (13.x)

    • SQL Server 2014 (12.x)

    • SQL Server 2012 (11.x)

    • SQL Server 2008 R2 (10.50.x)

    • SQL Server 2008 (10.0.x)

    • SQL Server 2014 (12.x)

    • SQL Server 2012 (11.x)

    • SQL Server 2008 R2 (10.50.x)

    • SQL Server 2008 (10.0.x)

  2. Avviare SQL Server Management Studio e connettersi al motore di database.

  3. Creare RSExecRole nei database di sistema se il motore di database non ha mai ospitato un database del server di report. Per altre informazioni, vedere Creare RSExecRole.

  4. Seguire le istruzioni disponibili in Spostamento di database del server di report in un altro computer (modalità nativa SSRS).

Tenere presente che il database del server di report e il database temporaneo sono interdipendenti e devono essere spostati insieme. Non copiare i database. Se li si copia non si trasferiscono tutte le impostazioni di sicurezza nella nuova installazione. Non spostare processi di SQL Server Agent per operazioni pianificate del server di report. Tali processi vengono ricreati automaticamente dal server di report.

Spostamento di estensioni o di assembly personalizzati

Se l'installazione include elementi dei report, estensioni o assembly personalizzati, è necessario ridistribuire i componenti personalizzati. Se non si usano componenti personalizzati, passare alla sezione Configurazione del server di report.

Per ridistribuire i componenti personalizzati, seguire questa procedura:

  1. Determinare se gli assembly sono supportati o devono essere ricompilati.

    • Le estensioni di sicurezza personalizzate devono essere riscritte usando l'interfaccia IAuthenticationExtension2.

    • Le estensioni per il rendering personalizzate per SQL Server Reporting Services 2008 (10.0.x) devono essere riscritte usando il modello di oggetti per il rendering.

    • I renderer HTML 3.2 e HTML OWC non sono supportati in SQL Server Reporting Services 2008 (10.0.x) e versioni successive.

    • Gli altri assembly personalizzati non richiedono la ricompilazione.

  2. Spostare gli assembly nel nuovo server di report e nella cartella \bin. In SQL Server i file binari del server di report si trovano nel percorso seguente per l'istanza del server di report predefinita:

    \Program files\Microsoft SQL Server\MSRS13.MSSQLSERVER\Reporting Services\ReportServer\bin

  3. Modificare i file di configurazione per aggiungere voci per il componente personalizzato. Le voci possono variare a seconda del tipo di assembly usato. Per istruzioni sulla posizione dei file e delle voci di configurazione da aggiungere, vedere gli argomenti seguenti:

    1. Distribuzione di un assembly personalizzato

    2. Procedura: Distribuire un elemento del report personalizzato

    3. Implementare un'estensione per l'elaborazione dati

    4. Implementare un'estensione per il recapito

    5. Implementare un'estensione per il rendering

    6. Implementazione di un'estensione di sicurezza

Configurare il server di report

Configurare gli URL per il servizio Web ReportServer e per il portale Web, quindi configurare la connessione al database del server di report.

Se si esegue la migrazione di una distribuzione con scalabilità orizzontale, portare tutti i nodi del server di report in modalità offline e migrare ciascuno server singolarmente. Dopo aver migrato il primo server di report e averlo connesso al database del server di report, la versione di tale database viene aggiornata automaticamente alla versione del database di SQL Server.

Importante

Se uno dei server di report nella distribuzione con scalabilità orizzontale è online e non è stata eseguita la migrazione, si potrebbe verificare l'eccezione rsInvalidReportServerDatabase perché il server usa uno schema obsoleto quando è connesso al database aggiornato.

Se il server di report di cui è stata eseguita la migrazione è configurato come database condiviso per una distribuzione con scalabilità orizzontale, è necessario eliminare tutte le chiavi di crittografia precedenti dalla tabella Keys nel database ReportServer rima di configurare il servizio del server di report. Se le chiavi non vengono rimosse, il server di report di cui è stata eseguita la migrazione tenta l'inizializzazione in modalità di distribuzione con scalabilità orizzontale. Per altre informazioni, vedere Aggiungere e rimuovere le chiavi di crittografia per una distribuzione con scalabilità orizzontale e Configurare e gestire chiavi di crittografia (Gestione configurazione server di report).

Non è possibile eliminare le chiavi di scalabilità orizzontale tramite Gestione configurazione Reporting Services. È necessario eliminare le chiavi precedenti dalla tabella Keys nel database ReportServer tramite SQL Server Management Studio. Eliminare tutte le righe nella tabella Keys. In questo modo vengono cancellati i dati dalla tabella e la tabella viene preparata per il solo ripristino della chiave simmetrica, come illustrato nei passaggi seguenti.

Prima di eliminare le chiavi, è necessario eseguire il backup della chiave di crittografia simmetrica. Per eseguire il backup della chiave è possibile usare lo strumento Gestione configurazione Reporting Services. Aprire Gestione configurazione, selezionare la scheda Chiavi di crittografia, quindi selezionare Backup. È inoltre possibile generare script dei comandi WMI per il backup della chiave di crittografia. Per altre informazioni su WMI, vedere Metodo ConfigurationSetting - BackupEncryptionKey.

  1. Avviare lo strumento Gestione configurazione Reporting Services e connettersi all'istanza di Reporting Services appena installata. Per altre informazioni, vedere Cos’è Configuration Manager del server di report (modalità nativa)?.

  2. Configurare gli URL per il server di report e per il portale Web. Per altre informazioni, vedere Creare un database del server di report in modalità nativa (Gestione configurazione del server di report).

  3. Configurare il database del server di report, selezionando il database esistente dell'installazione precedente. Al termine della configurazione, i servizi del server di report vengono riavviati e, dopo aver stabilito una connessione al database del server di report, il database viene aggiornato automaticamente a SQL Server Reporting Services. Per altre informazioni su come eseguire la procedura guidata Cambia database, usata per creare o selezionare un database del server di report, vedere Creare un database del server di report in modalità nativa (Gestione configurazione).

  4. Ripristinare le chiavi di crittografia. Questo passaggio è necessario per l'abilitazione di crittografia reversibile in stringhe di connessione preesistenti e credenziali già presenti nel database del server di report. Per altre informazioni, si veda Eseguire il backup e il ripristino delle chiavi di crittografia di SQL Server Reporting Services (SSRS).

  5. Se il server di report è stato installato in un nuovo computer e si utilizza Windows Firewall, assicurarsi che la porta TCP sulla quale è in attesa il server di report sia aperta. Per impostazione predefinita, tale porta è la numero 80. Per altre informazioni, vedere Configurare un firewall per l'accesso al server di report.

  6. Se si desidera amministrare il server di report in modalità nativa in locale, è necessario configurare il sistema operativo per consentire l'amministrazione locale con il portale Web. Per altre informazioni, vedere Configurare un server di report in modalità nativa per gli amministratori locali (SSRS).

Copia delle impostazioni di configurazione personalizzate nel file RSReportServer.config

Se nell'installazione precedente è stato modificato il file RSReportServer.config o RSWebApplication.config, è consigliabile apportare le stesse modifiche nel nuovo file RSReportServer.config. L'elenco seguente riepiloga le possibili modifiche per il file di configurazione precedente. L'elenco fornisce anche collegamenti ad altre informazioni su come configurare le stesse impostazioni in SQL Server 2016.

Personalizzazione Informazioni
Recapito tramite posta elettronica del server di report con impostazioni personalizzate Impostazioni posta elettronica nella modalità nativa di Reporting Services (Gestione della configurazione del server di report).
Impostazioni relative alle informazioni sul dispositivo Personalizzare i parametri di estensione per il rendering in RSReportServer.Config

Gruppo di servizi Windows ed elenchi di controllo di accesso di sicurezza

In SQL Server 2016 (13.x) Reporting Services o versioni successive (SSRS), è disponibile un gruppo di servizi, ovvero il gruppo di servizi Windows per Reporting Services, usato per creare elenchi di controllo di accesso di sicurezza per tutte le chiavi del Registro di sistema, i file e le cartelle installate con SQL Server Reporting Services. Il nome di tale gruppo Windows viene visualizzato nel formato SQLServerReportServerUser$<computer_name>$<instance_name>.

Verificare la distribuzione

  1. Testare le directory virtuali del server di report e del portale Web aprendo un browser e immettendo l'indirizzo URL. Per altre informazioni, vedere Verificare un'installazione di Reporting Services.

  2. Testare i report e verificare che contengano i dati previsti. Rivedere le informazioni di origine dei dati per verificare se le informazioni sulla connessione all'origine dei dati sono ancora specificate. Il server di report usa il modello a oggetti dei report per l'elaborazione e il rendering dei report, ma non sostituisce i costrutti di SQL Server 2008 (10.0.x), SQL Server 2008 R2 (10.50.x), SQL Server 2012 (11.x) o SQL Server 2014 (12.x) con i nuovi elementi RDL (Report Definition Language). Per altre informazioni sulla modalità di esecuzione dei report esistenti in una nuova versione del server di report, vedere Aggiornare i report (SSRS).

Rimozione di programmi e file inutilizzati

Dopo avere eseguito la migrazione del server di report a una nuova istanza, si dovrebbe seguire questa procedura per rimuovere programmi e file che non sono più necessari.

  1. Disinstallare la versione precedente di Reporting Services se non è più necessaria. Questo passaggio non comporta l'eliminazione degli elementi riportati di seguito, che tuttavia possono essere rimossi manualmente se ritenuti inutili:

    • Database del server di report precedente

    • Ruolo RsExec

    • Account del servizio del server di report

    • Pool di applicazioni per il servizio Web ReportServer

    • Directory virtuali per Gestione report e il server di report

    • File di log del server di report

  2. Rimuovere IIS se non è più necessario nel computer.