Creazione di script di replicaScripting Replication

Gli script di tutti i componenti di replica inclusi in una topologia devono essere creati come parte di un piano di ripristino di emergenza. Gli script possono inoltre essere utilizzati per automatizzare attività ripetitive.All replication components in a topology should be scripted as part of a disaster recovery plan, and scripts can also be used to automate repetitive tasks. Uno script contiene le stored procedure di sistema Transact-SQL necessarie per l'implementazione dei componenti di replica, ad esempio una pubblicazione o una sottoscrizione.A script contains the Transact-SQL system stored procedures necessary to implement the replication component(s) scripted, such as a publication or subscription. Gli script possono essere creati mediante una procedura guidata, quale Creazione guidata nuova pubblicazione, o in MicrosoftMicrosoft SQL Server Management StudioSQL Server Management Studio dopo aver creato un componente.Scripts can be created in a wizard (such as the New Publication Wizard) or in MicrosoftMicrosoft SQL Server Management StudioSQL Server Management Studio after you create a component. È possibile visualizzare, modificare ed eseguire lo script utilizzando SQL Server Management StudioSQL Server Management Studio o sqlcmd.You can view, modify, and run the script using SQL Server Management StudioSQL Server Management Studio or sqlcmd. Gli script possono essere memorizzati con file di backup da utilizzare nel caso in cui sia necessario riconfigurare una topologia di replica.Scripts can be stored with backup files to be used in case a replication topology must be reconfigured.

È necessario creare un nuovo script per un componente se vengono apportate modifiche alle proprietà.A component should be re-scripted if any property changes are made. Se si utilizzano stored procedure personalizzate con la replica transazionale, è consigliabile archiviare una copia di ogni procedura con gli script, aggiornando la copia in caso di modifica della procedura. Le procedure vengono in genere aggiornate in seguito a modifiche dello schema o a nuove esigenze applicative.If you use custom stored procedures with transactional replication, a copy of each procedure should be stored with the scripts; the copy should be updated if the procedure changes (procedures are typically updated due to schema changes or changing application requirements). Per altre informazioni sulle procedure personalizzate, vedere Specificare la modalità di propagazione delle modifiche per gli articoli transazionali.For more information about custom procedures, see Specify How Changes Are Propagated for Transactional Articles.

Per le pubblicazioni di tipo merge che utilizzano filtri con parametri, gli script di pubblicazione contengono le chiamate alle stored procedure per la creazione di partizioni dei dati.For merge publications that use parameterized filters, publication scripts contain the stored procedure calls to create data partitions. Lo script offre un riferimento per le partizioni create e un modo per ricreare, se necessario, una o più partizioni.The script provides a reference for the partitions created and a way in which to re-create one or more partitions if necessary.

Esempio di automazione di un'attività tramite scriptExample of Automating a Task with Scripts

Si consideri Adventure Works CyclesAdventure Works Cycles, che implementa la replica di tipo merge per distribuire dati alla forza vendita remota.Consider Adventure Works CyclesAdventure Works Cycles, which implements merge replication to distribute data to its remote sales force. Una rappresentante scarica tutti i dati relativi ai clienti nella propria zona utilizzando sottoscrizioni pull.A sales representative downloads all the data that pertains to the customers in her territory using pull subscriptions. Lavorando offline, la rappresentante aggiorna i dati e immette nuovi clienti e ordini.When working offline, the sales representative updates data and enters new customers and orders. Poiché Adventure Works CyclesAdventure Works Cycles dispone di oltre cinquanta rappresentanti in zone diverse, la creazione delle diverse sottoscrizioni in ogni Sottoscrittore mediante la Creazione guidata nuova sottoscrizione richiederebbe una notevole quantità di tempo.Because Adventure Works CyclesAdventure Works Cycles has more than fifty sales representatives in different territories, it would be time-consuming to create the different subscriptions at each Subscriber with the New Subscription Wizard. L'amministratore della replica può invece eseguire la procedura seguente:Instead, the replication administrator can follow these steps:

  1. Impostare le pubblicazioni di tipo merge necessarie con partizioni basate sul rappresentante o sulla zona.Set up the necessary merge publications with partitions based on the sales representative or their territory.

  2. Creare una sottoscrizione pull per un Sottoscrittore.Create a pull subscription for one Subscriber.

  3. Generare uno script basato su tale sottoscrizione pull.Generate a script based on that pull subscription.

  4. Modificare lo script, modificando valori come il nome del Sottoscrittore.Modify the script, changing such values as the name of the Subscriber.

  5. Eseguire lo script in più Sottoscrittori per generare le sottoscrizioni pull necessarie.Run the script at multiple Subscribers to generate the required pull subscriptions.

Creazione di script per gli oggetti di replicaScript Replication Objects

Creare script per gli oggetti di replica tramite le procedure guidate per la replica o dalla cartella Replica in MicrosoftMicrosoft SQL Server Management StudioSQL Server Management Studio.Script replication objects from the replication wizards or from the Replication folder in MicrosoftMicrosoft SQL Server Management StudioSQL Server Management Studio. Se si utilizzano le procedure guidate, è possibile scegliere di creare oggetti e includerli in script o solo di includerli in script.If you script from the wizards, you can choose to create objects and script them, or you can choose only to script them.

Importante

Negli script tutte le password sono impostate come NULL.All passwords are scripted as NULL. Se possibile, richiedere agli utenti di immettere le credenziali di sicurezza in fase di esecuzione.When possible, prompt users to enter security credentials at runtime. Se si archiviano le credenziali in un file di script, è necessario proteggere il file per impedire l'accesso non autorizzato.If you store credentials in a script file, you must secure the file to prevent unauthorized access.

Per ulteriori informazioni sull'utilizzo delle procedure guidate di replica, vedere:For more information about using the replication wizards, see:

Per creare script per un oggetto da una procedura guidata di replicaTo script an object from a replication wizard

  1. Nella pagina Azioni procedura guidata della procedura guidata selezionare la casella di controllo appropriata:On the Wizard Actions page of a wizard, select the check box appropriate for the wizard:

    • Genera un file script con i passaggi per la creazione della pubblicazioneGenerate a script file with steps to create a publication

    • Genera un file script con i passaggi per la creazione delle sottoscrizioniGenerate a script file with steps to create the subscription(s)

    • Genera un file script con i passaggi per la configurazione della distribuzioneGenerate a script file with steps to configure distribution

  2. Specificare le opzioni nella pagina Proprietà file script .Specify options on the Script File Properties page.

  3. Completare la procedura guidata.Complete the wizard.

Per creare script per un oggetto da Management StudioTo script an object from Management Studio

  1. Connettersi al server di distribuzione, al server di pubblicazione o al Sottoscrittore in Management StudioManagement Studioe quindi espandere il nodo del server.Connect to the Distributor, Publisher, or Subscriber in Management StudioManagement Studio, and then expand the server node.

  2. Espandere la cartella Replica e quindi la cartella Pubblicazioni locali o la cartella Sottoscrizioni locali .Expand the Replication folder, and then expand the Local Publications folder or the Local Subscriptions folder.

  3. Fare clic con il pulsante destro del mouse su una pubblicazione o una sottoscrizione e quindi scegliere Genera script.Right-click a publication or subscription, and then click Generate Scripts.

  4. Specificare le opzioni nella finestra di dialogo Genera script SQL - <OggettoReplica>.Specify options in the Generate SQL Script - <ReplicationObject> dialog box.

  5. Fare clic su Genera script nel file.Click Script to File.

  6. Immettere un nome di file nella finestra di dialogo Percorso file script e quindi fare clic su Salva.Enter a file name in the Script File Location dialog box, and then click Save. Viene visualizzato un messaggio di stato.A status message is displayed.

  7. Fare clic su OK, quindi su Chiudi.Click OK, and then click Close.

Per creare script per più oggetti da Management StudioTo script multiple objects from Management Studio

  1. Connettersi al server di distribuzione, al server di pubblicazione o al Sottoscrittore in Management StudioManagement Studioe quindi espandere il nodo del server.Connect to the Distributor, Publisher, or Subscriber in Management StudioManagement Studio, and then expand the server node.

  2. Fare clic con il pulsante destro del mouse sulla cartella Replica e quindi scegliere Genera script.Right-click the Replication folder, and then click Generate Scripts.

  3. Specificare le opzioni nella finestra di dialogo Genera script SQL .Specify options in the Generate SQL Script dialog box.

  4. Fare clic su Genera script nel file.Click Script to File.

  5. Immettere un nome di file nella finestra di dialogo Percorso file script e quindi fare clic su Salva.Enter a file name in the Script File Location dialog box, and then click Save. Viene visualizzato un messaggio di stato.A status message is displayed.

  6. Fare clic su OK e quindi su Chiudi.Click OK, and then click Close.