Modificare le opzioni di inizializzazione dello snapshot per la replica di SQL

Si applica a:Istanza gestita di SQL Di Azure di SQL Server

Quando si inizializza una sottoscrizione con uno snapshot sono disponibili diverse opzioni.

Specificare il formato dello snapshot (SQL Server Management Studio)

Specificare il formato dello snapshot nella pagina Snapshot della finestra di dialogo Proprietà pubblicazione - <Pubblicazione> . Per ulteriori informazioni sull'accesso a questa finestra di dialogo, vedere View and Modify Publication Properties.

Per specificare il formato dello snapshot

  1. Nella pagina Snapshot della finestra di dialogo Proprietà pubblicazione - <Pubblicazione> selezionare SQL Server nativo : tutti i Sottoscrittori devono essere server che eseguono SQL Server o Carattere, necessari se un server di pubblicazione o un Sottoscrittore non esegue SQL Server.

    Nota

    È consigliabile selezionare il formato nativo a meno che la pubblicazione non debba supportare sottoscrizioni a un database di SQL Server Compact o a un database non di SQL Server.

  2. Selezionare OK.

Posizioni della cartella snapshot

Posizione predefinita degli snapshot

Specificare la posizione predefinita degli snapshot nella pagina Cartella snapshot della Configurazione guidata distribuzione. Per altre informazioni sull'uso di questa procedura guidata, vedere Configurare la pubblicazione e la distribuzione. Se si crea una pubblicazione su un server non configurato come server di distribuzione, specificare una posizione predefinita degli snapshot nella pagina Cartella snapshot della Creazione guidata nuova pubblicazione. Per altre informazioni sull'uso di questa procedura guidata, vedere Creare una pubblicazione.

Modificare il percorso dello snapshot predefinito nella pagina Server di pubblicazione della finestra di dialogo Proprietà server di distribuzione - <Server di distribuzione> . Per altre informazioni, vedere Visualizzare e modificare le proprietà del server di pubblicazione e del database di distribuzione. Impostare la cartella snapshot per ogni pubblicazione nella finestra di dialogo Proprietà pubblicazione - <Pubblicazione> . Per altre informazioni, vedere View and Modify Publication Properties.

Per modificare la posizione predefinita degli snapshot

  1. Nella pagina Server di pubblicazione della finestra di dialogo Proprietà server di distribuzione - <Server di distribuzione> fare clic sul pulsante delle proprietà (...) per il server di pubblicazione per cui si desidera modificare il percorso predefinito dello snapshot.

  2. Nella finestra di dialogo Proprietà server di pubblicazione - <Server di pubblicazione> immettere un valore per la proprietà Cartella snapshot predefinita.

    Nota

    L'agente snapshot deve disporre delle autorizzazioni di scrittura per la directory specificata, mentre l'agente di distribuzione o l'agente di merge deve disporre delle autorizzazioni di lettura. Se vengono usate sottoscrizioni pull, è necessario specificare una directory condivisa come percorso UNC (Universal Naming Convention), ad esempio \\nomecomputer\snapshot. Per altre informazioni, vedere Proteggere la cartella snapshot.

  3. Selezionare OK.

Posizioni alternative della cartella snapshot

Le posizioni alternative della cartella snapshot consentono di archiviare i file di snapshot in una posizione aggiuntiva o diversa da quella predefinita, in genere inclusa nel database di distribuzione. Una posizione alternativa può essere un altro server, un'unità di rete oppure un supporto rimovibile, ad esempio un CD-ROM o un disco rimovibile.

Le posizioni alternative della cartella snapshot vengono archiviate come proprietà della pubblicazione. Dato che la posizione alternativa della cartella snapshot è una proprietà della pubblicazione, l'agente di distribuzione e l'agente di merge sono in grado di individuare la cartella snapshot corretta durante il processo di sincronizzazione.

Se si desidera specificare una posizione alternativa della cartella snapshot o comprimere i file di snapshot senza creare immediatamente lo snapshot iniziale, è possibile impostare le proprietà della pubblicazione relative alla posizione dello snapshot e quindi eseguire l'agente snapshot per tale pubblicazione. Se tuttavia si modifica la posizione alternativa dopo avere creato lo snapshot iniziale, è possibile che gli snapshot generati per la pubblicazione non vengano ricollocati nella nuova posizione alternativa. In questo caso, a seconda delle impostazioni di pubblicazione, l'agente di merge o l'agente di distribuzione potrebbero non essere in grado di trovare i file di snapshot nella nuova posizione alternativa.

Nota

Non specificare un percorso alternativo (utilizzando la finestra di dialogo Proprietà pubblicazione o sp_changepublication (Transact-SQL)) uguale al percorso predefinito della cartella snapshot.

Attenzione

Non utilizzare contemporaneamente sia WebSync sia percorsi alternativi della cartella snapshot.

Usare SQL Server Management Studio

  1. Nella pagina Snapshot della finestra di dialogo Proprietà pubblicazione - <Pubblicazione>:

    1. Selezionare Inserisci i file nella cartella seguentee quindi fare clic su Sfoglia per passare a una directory oppure immettere il percorso della directory in cui devono essere archiviati i file di snapshot.

      Nota

      L'agente snapshot deve disporre delle autorizzazioni di scrittura per la directory specificata, mentre l'agente di distribuzione o l'agente di merge deve disporre delle autorizzazioni di lettura. Se vengono usate sottoscrizioni pull, è necessario specificare una directory condivisa come percorso UNC (Universal Naming Convention), ad esempio \\nomecomputer\snapshot. Per altre informazioni, vedere Proteggere la cartella snapshot.

    2. Deselezionare Inserisci i file nella cartella predefinita a meno che non sia necessario scrivere i file di snapshot in entrambe le posizioni.

    Per comprimere i file di snapshot, selezionare Comprimi i file di snapshot in questa cartella. La compressione viene in genere utilizzata per le connessioni a larghezza di banda ridotta e per i percorsi alternativi per lo snapshot nei supporti rimovibili, ad esempio un CD-ROM.

  2. Selezionare OK.

Usare Transact-SQL

Quando si configurano le proprietà dello snapshot (programmazione Transact-SQL della replica), specificare il valore per snapshot_in_defaultfolder come false.

Snapshot compressi

È consigliabile comprimere i file di snapshot quando vengono trasferiti in una rete lenta o salvati su supporti rimovibili in cui lo spazio disponibile non è sufficiente per contenere uno snapshot non compresso. La compressione, pur essendo utile in queste situazioni, richiede più tempo per generare e applicare lo snapshot.

I file di snapshot compressi vengono scritti nel formato di file CAB Microsoft, che può comprimere i file di 2 GB o meno (se i file di snapshot sono di dimensioni superiori a 2 GB, non possono essere compressi). Per comprimere i file, è necessario scriverli in una cartella snapshot alternativa, in quanto non è possibile comprimere i file scritti nella cartella predefinita.

I file vengono decompressi nella posizione di esecuzione dell'agente di distribuzione o dell'agente di merge. Con gli snapshot compressi vengono in genere utilizzate sottoscrizioni pull, in modo che i file vengano decompressi nel Sottoscrittore. Quando il Sottoscrittore riceve un file compresso, quest'ultimo viene scritto inizialmente in un percorso temporaneo. Dopo che il file compresso è stato copiato nel Sottoscrittore, i file di snapshot nel file compresso vengono decompressi, in ordine e uno alla volta, tramite l'utilità CAB. Lo spazio necessario nel Sottoscrittore equivale alla somma della dimensione del file compresso e della dimensione del file non compresso più grande.

Nota

Gli snapshot compressi, in alcuni casi, consentono di migliorare le prestazioni relative al trasferimento di file di snapshot in rete. La compressione dello snapshot richiede, tuttavia, un'ulteriore elaborazione da parte dell'agente snapshot per la generazione dei file di snapshot e da parte dell'agente di distribuzione o dell'agente di merge per l'applicazione di tali file. Questo può rallentare il processo di generazione degli snapshot e, in alcuni casi, aumentare il tempo necessario per applicarli. Inoltre, poiché non è possibile riprendere gli snapshot compressi in caso di errore della rete, tali snapshot non sono adatti per le reti non affidabili. Quando si utilizzano snapshot compressi in rete, è necessario considerare tutti i pro e contro.

Usare SQL Server Management Studio

  1. Nella pagina Snapshot della finestra di dialogo Proprietà pubblicazione - <Pubblicazione>:

    1. Selezionare Inserisci i file nella cartella seguentee quindi fare clic su Sfoglia per passare a una directory oppure immettere il percorso della directory in cui devono essere archiviati i file di snapshot.

      Nota

      L'agente snapshot deve disporre delle autorizzazioni di scrittura per la directory specificata, mentre l'agente di distribuzione o l'agente di merge deve disporre delle autorizzazioni di lettura. Se vengono usate sottoscrizioni pull, è necessario specificare una directory condivisa come percorso UNC (Universal Naming Convention), ad esempio \\nomecomputer\snapshot. Per altre informazioni, vedere Proteggere la cartella snapshot.

    2. Deselezionare Inserisci i file nella cartella predefinita a meno che non sia necessario scrivere i file di snapshot in entrambe le posizioni.

      Nota

      Se questa casella di controllo è selezionata, i file archiviati nella cartella predefinita non vengono compressi. I file compressi possono essere archiviati solo nel percorso alternativo specificato nel passaggio precedente.

  2. Selezionare Comprimi i file di snapshot in questa cartella.

  3. Selezionare OK.

Usare Transact-SQL

Quando si configurano le proprietà dello snapshot, specificare il valore compress_snapshot come True.

Eseguire gli script prima e dopo l'applicazione dello snapshot

È possibile specificare gli script da eseguire nel Sottoscrittore prima o dopo l'applicazione dello snapshot. È possibile utilizzare script per diversi scopi, ad esempio per creare account di accesso e schemi (proprietari di oggetti) in ogni Sottoscrittore.

Dopo avere specificato un percorso per ogni script, l'agente snapshot copia i file script nella cartella snapshot corrente ogni volta che viene eseguita l'elaborazione dello snapshot. Quando si applica uno snapshot, l'agente di distribuzione o l'agente di merge esegue lo script pre-snapshot prima di qualsiasi script degli oggetti replicati. L'agente di distribuzione o l'agente di merge esegue lo script post-snapshot dopo l'applicazione di tutti gli altri script degli oggetti replicati e dei dati. Al termine dell'applicazione dello snapshot e dell'esecuzione corretta dei file script, gli script vengono rimossi dalla directory di lavoro del Sottoscrittore.

Lo script viene eseguito avviando l'utilità sqlcmd . Prima di distribuire uno script, eseguirlo con sqlcmd per verificarne la corretta esecuzione in base a quanto previsto. È necessario che il contenuto degli script eseguiti prima e dopo l'applicazione dello snapshot sia ripetibile. Se, ad esempio, si crea una tabella nello script, è innanzitutto necessario verificarne l'esistenza e, in tal caso, eseguire le azioni appropriate. Lo script deve essere ripetibile perché, se è necessario reinizializzare una sottoscrizione per cui lo script è già stato applicato, lo script viene applicato nuovamente in corrispondenza dell'applicazione del nuovo snapshot in fase di reinizializzazione.

Se si comprime il file di snapshot (inserendolo in formato file CAB Microsoft), gli script vengono compressi e inseriti nel file CAB. Dopo il trasferimento e la decompressione del file di snapshot compresso in una directory di lavoro nel Sottoscrittore, vengono eseguiti tutti gli script indicati come pre-snapshot. In modo analogo, tutti gli script post-snapshot vengono decompressi ed eseguiti nel Sottoscrittore come ultimo passaggio dell'applicazione dello snapshot.

Eseguire uno script

  1. Nella pagina Snapshot della finestra di dialogo Proprietà pubblicazione - <Pubblicazione>:
    • Per specificare uno script da eseguire prima dell'applicazione dello snapshot, fare clic su Sfoglia per passare allo script oppure immettere un percorso per lo script nella casella di testo Prima di applicare lo snapshot, esegui lo script seguente .

      Nota

      È necessario che l'agente di distribuzione o l'agente di merge disponga delle autorizzazioni di lettura per la directory specificata. Se vengono usate sottoscrizioni pull, è necessario specificare una directory condivisa come percorso UNC (Universal Naming Convention), ad esempio \\nomecomputer\scripts\myscript.sql.

    • Per specificare uno script da eseguire dopo l'applicazione dello snapshot, fare clic su Sfoglia per passare allo script oppure immettere un percorso UNC per lo script nella casella di testo Dopo l'applicazione dello snapshot, esegui lo script seguente .

  2. Selezionare OK.

Vedi anche

Inizializzare una sottoscrizione con uno snapshot
Trasferimento uno snapshot tramite FTP
Configurare le proprietà dello snapshot (programmazione Transact-SQL della replica)