Procedura: Creazione di una sottoscrizione per un Sottoscrittore non SQL Server (SQL Server Management Studio)

La replica transazionale e la replica snapshot supportano la pubblicazione di dati su Sottoscrittori non Microsoft SQL Server. Per creare una sottoscrizione per un Sottoscrittore non SQL Server:

  1. Installare e configurare il software client e il provider o i provider OLE DB appropriati sul server di distribuzione SQL Server. Per ulteriori informazioni, vedere Sottoscrittori Oracle e Sottoscrittori IBM DB2.

  2. Creare una pubblicazione utilizzando la Creazione guidata nuova pubblicazione. Per ulteriori informazioni sulla creazione di pubblicazioni, vedere Procedura: Creazione di una pubblicazione e definizione di articoli (SQL Server Management Studio) e Procedura: Creazione di una pubblicazione da un database Oracle (SQL Server Management Studio). Specificare le opzioni seguenti nella Creazione guidata nuova pubblicazione.

    • Nella pagina Tipo di pubblicazione, selezionare Pubblicazione snapshot o Pubblicazione transazionale.

    • Nella pagina Agente snapshot, deselezionare Crea snapshot immediatamente.

      Lo snapshot viene creato dopo che la pubblicazione è stata attivata per i Sottoscrittori non SQL Server, in modo da garantire che l'agente snapshot generi uno snapshot e script di inizializzazione che siano adatti ai Sottoscrittori non SQL Server.

  3. Attivare la pubblicazione per i Sottoscrittori non SQL Server utilizzando la finestra di dialogo Proprietà pubblicazione - <NomePubblicazione>. In questo argomento sono presenti ulteriori informazioni su questo passaggio. Per ulteriori informazioni sulla finestra di dialogo Proprietà pubblicazione, vedere Proprietà pubblicazione - <Publication>.

  4. Creare una sottoscrizione utilizzando la Creazione guidata nuova sottoscrizione. In questo argomento sono presenti ulteriori informazioni su questo passaggio.

  5. (Facoltativo) Modificare la proprietà di articolo pre_creation_cmd affinché le tabelle vengano mantenute nel Sottoscrittore. In questo argomento sono presenti ulteriori informazioni su questo passaggio.

  6. Generare uno snapshot per la pubblicazione. In questo argomento sono presenti ulteriori informazioni su questo passaggio.

  7. Sincronizzare la sottoscrizione. Per ulteriori informazioni, vedere Procedura: Sincronizzazione di una sottoscrizione push (SQL Server Management Studio).

Nota

Questo processo si applica ai server di pubblicazione che eseguono Microsoft SQL Server 2005 e versioni successive.

Per attivare una pubblicazione per Sottoscrittori non SQL Server

  1. Connettersi al server di pubblicazione in SQL Server Management Studio e quindi espandere il nodo del server.

  2. Espandere la cartella Replica e quindi la cartella Pubblicazioni locali.

  3. Fare clic con il pulsante destro del mouse sulla pubblicazione e quindi scegliere Proprietà.

  4. Nella pagina Opzioni sottoscrizione, selezionare il valore True per l'opzione Consenti Sottoscrittori non SQL Server. Se si seleziona questa opzione vengono modificate alcune proprietà in modo che la pubblicazione sia compatibile con i Sottoscrittori non SQL Server.

    Nota

    Selezionando True, il valore della proprietà dell'articolo pre_creation_cmd viene impostato su 'drop'. In base a tale impostazione, se una tabella nel Sottoscrittore corrisponde al nome della tabella nell'articolo, tale tabella verrà eliminata dalla replica. Se si dispone di tabelle esistenti che si desidera mantenere, utilizzare la stored procedure sp_changearticle per ogni articolo e specificare il valore 'none' per pre_creation_cmd: sp_changearticle @publication= 'MyPublication', @article= 'MyArticle', @property='pre_creation_cmd', @value='none'.

  5. Fare clic su OK. Verrà richiesto di creare un nuovo snapshot per la pubblicazione. Se non si desidera crearlo in questo momento, utilizzare i passaggi descritti nella "Procedura" seguente in un momento successivo.

Per creare una sottoscrizione per un Sottoscrittore non SQL Server

  1. Espandere la cartella Replica e quindi la cartella Pubblicazioni locali.

  2. Fare clic con il pulsante destro del mouse sulla pubblicazione appropriata e quindi scegliere Nuove sottoscrizioni.

  3. Verificare che l'opzione Esegui tutti gli agenti nel server di distribuzione nella pagina Posizione in cui eseguire l'agente di distribuzione sia selezionata. I Sottoscrittori non SQL Server non supportano l'esecuzione di agenti nel Sottoscrittore.

  4. Nella pagina Sottoscrittori, fare clic su Aggiungi Sottoscrittore, quindi su Aggiungi Sottoscrittore non SQL Server.

  5. Nella finestra di dialogo Aggiungi Sottoscrittore non SQL Server, selezionare il tipo di Sottoscrittore.

  6. Inserire un valore nella casella Nome origine dati:

    • Per Oracle, si tratta del nome TNS che è stato configurato.

    • Per IBM, può essere qualsiasi nome. In genere viene utilizzato per specificare l'indirizzo di rete del Sottoscrittore.

    Il nome origine dati immesso in questo passaggio e le credenziali specificate nel passaggio 9 non vengono convalidati da questa procedura guidata. Non vengono utilizzati dalla replica fino all'esecuzione dell'agente di distribuzione per la sottoscrizione. Accertarsi che tutti i valori siano stati verificati connettendosi al Sottoscrittore con uno strumento client come sqlplus per Oracle. Per ulteriori informazioni, vedere Sottoscrittori Oracle e Sottoscrittori IBM DB2.

  7. Fare clic su OK. Nella pagina Sottoscrittori della procedura guidata, il Sottoscrittore è ora visualizzato nella colonna Sottoscrittore con una (destinazione predefinita) di sola lettura nella colonna Database di sottoscrizione:

    • Per Oracle, un server include al massimo un database e pertanto non è necessario specificare il database.

    • Per IBM DB2, il database viene specificato nella proprietà Catalogo iniziale della stringa di connessione DB2, che può essere inserita nel campo Opzioni di connessione aggiuntive descritto più avanti in questo processo.

  8. Nella pagina Sicurezza agente di distribuzione, fare clic sul pulsante delle proprietà (...) accanto al Sottoscrittore per accedere alla finestra di dialogo Sicurezza agente di distribuzione.

  9. Nella finestra di dialogo Sicurezza agente di distribuzione:

    • Nei campi Account processo, Password e Conferma password, inserire l'account e la password di Microsoft Windows con cui deve essere eseguito l'agente di distribuzione e stabilire le connessioni locali al server di distribuzione.

      L'account richiede le autorizzazioni minime seguenti: membro del ruolo predefinito db_owner del database di distribuzione, membro dell'elenco di accesso alla pubblicazione, autorizzazione di lettura sulla condivisione snapshot e autorizzazione di lettura sulla directory di installazione del provider OLE DB. Per ulteriori informazioni sull'elenco di accesso alla pubblicazione, vedere Protezione del server di pubblicazione.

    • Nei campi Nome account di accesso, Password e Conferma password di Connessione al Sottoscrittore, inserire il nome account di accesso e la password da utilizzare per la connessione al Sottoscrittore. Questo nome account di accesso dovrebbe essere già configurato ed avere autorizzazioni sufficienti per la creazione di oggetti nel database di sottoscrizione.

    • Nel campo Opzioni di connessione aggiuntive, specificare le eventuali opzioni di connessione per il Sottoscrittore nel formato di stringa di connessione (Oracle non richiede opzioni aggiuntive). Le opzioni devono essere separate dal punto e virgola. L'esempio seguente illustra una stringa di connessione DB2 (le interruzioni di riga sono inserite per agevolare la lettura):

      Provider=DB2OLEDB;Initial Catalog=MY_SUBSCRIBER_DB;Network Transport Library=TCP;Host CCSID=1252;
      PC Code Page=1252;Network Address=MY_SUBSCRIBER;Network Port=50000;Package Collection=MY_PKGCOL;
      Default Schema=MY_SCHEMA;Process Binary as Character=False;Units of Work=RUW;DBMS Platform=DB2/NT;
      Persist Security Info=False;Connection Pooling=True;
      

      La maggior parte delle opzioni della stringa sono specifiche del server DB2 da configurare, ma l'opzione Process Binary as Character deve essere sempre impostata su False. Per identificare il database di sottoscrizione è necessario un valore per l'opzione Catalogo iniziale.

  10. Nella pagina Pianificazione della sincronizzazione, selezionare una pianificazione per l'agente di distribuzione dal menu Pianificazione agente. In genere è Esecuzione continua.

  11. Nella pagina Inizializzazione sottoscrizioni, specificare se la sottoscrizione deve essere inizializzata e quando:

    • Deselezionare Inizializzazione di solo se nel database di sottoscrizione sono stati creati tutti gli oggetti e sono stati aggiunti tutti i dati necessari.

    • Selezionare Immediatamente nell'elenco a discesa della colonna Quando per ottenere il trasferimento dei file di snapshot da parte dell'agente di distribuzione al Sottoscrittore al termine di questa procedura guidata. Selezionare Alla prima sincronizzazione per ottenere il trasferimento dei file da parte dell'agente alla successiva esecuzione pianificata.

  12. Nella pagina Azioni procedura guidata, se si desidera, creare lo script della sottoscrizione. Per ulteriori informazioni, vedere Creazione di script di replica.

Per mantenere le tabelle nel Sottoscrittore

  • Per impostazione predefinita, se si attiva una pubblicazione per Sottoscrittori non SQL Server, il valore della proprietà di articolo pre_creation_cmd verrà impostato su 'drop'. In base a tale impostazione, se una tabella nel Sottoscrittore corrisponde al nome della tabella nell'articolo, tale tabella verrà eliminata dalla replica. Se si dispone di tabelle esistenti nel Sottoscrittore che si desidera mantenere, utilizzare la stored procedure sp_changearticle per ogni articolo e specificare il valore 'none' per pre_creation_cmd. sp_changearticle @publication= 'MyPublication', @article= 'MyArticle', @property='pre_creation_cmd', @value='none'.

Per generare uno snapshot per la pubblicazione.

  1. Espandere la cartella Replica e quindi la cartella Pubblicazioni locali.

  2. Fare clic con il pulsante destro del mouse sulla pubblicazione e quindi scegliere Visualizza stato agente snapshot.

  3. Nella finestra di dialogo Visualizza stato agente snapshot - <Publication>, fare clic su Avvia.

Al termine della generazione dello snapshot da parte dell'agente, viene visualizzato un messaggio come ""[100%] Generato uno snapshot di 17 articoli."