Condividi tramite


Configurazione di un server di pubblicazione Oracle

La creazione di una pubblicazione nei server di pubblicazione Oracle avviene in maniera analoga al processo di creazione delle comuni pubblicazioni snapshot e transazionali, ma prima di poter effettivamente eseguire questo processo è necessario completare la procedura seguente (i primi quattro passaggi verranno descritti in dettaglio di seguito in questo argomento):

  1. Creare un utente di amministrazione della replica nel database Oracle utilizzando l'apposito script.

  2. Concedere direttamente, anziché tramite un ruolo, all'utente di amministrazione di Oracle creato nel passaggio 1 l'autorizzazione SELECT per ogni tabella che verrà pubblicata.

  3. Installare il software client Oracle e il provider OLE DB nel server di distribuzione di Microsoft SQL Server e quindi arrestare e riavviare l'istanza di SQL Server. Se il server di distribuzione viene eseguito su una piattaforma a 64 bit, è necessario utilizzare la versione a 64 bit del provider OLE DB Oracle.

  4. Configurare il database Oracle come server di pubblicazione nel server di distribuzione SQL Server.

Per un elenco di oggetti che possono essere replicati da un database Oracle, vedere Considerazioni e limitazioni relative alla progettazione dei server di pubblicazione Oracle.

Nota

Per poter abilitare un server di pubblicazione o di distribuzione e creare una pubblicazione o una sottoscrizione Oracle da una pubblicazione Oracle, è necessario essere membri del ruolo predefinito del server sysadmin .

Creazione di uno schema utente di amministrazione della replica all'interno del database Oracle

Gli agenti di replica si connettono al database Oracle e svolgono operazioni nel contesto di uno schema utente che deve essere appositamente creato. A questo schema devono essere concesse alcune autorizzazioni, elencate nella sezione successiva. Questo schema possiede tutti gli oggetti creati dal processo di replica di Microsoft SQL Server nel server di pubblicazione Oracle, ad eccezione di un sinonimo pubblico, MSSQLSERVERDISTRIBUTOR. Per ulteriori informazioni sugli oggetti creati nel database Oracle, vedere Objects Created on the Oracle Publisher.

Nota

Eliminando il sinonimo pubblico MSSQLSERVERDISTRIBUTOR e l’utente della replica Oracle configurato con l’opzione CASCADE vengono rimossi tutti gli oggetti di replica dalla pubblicazione Oracle.

È disponibile uno script di esempio che consente di agevolare la configurazione dello schema utente di replica Oracle. Lo script è disponibile nella directory seguente dopo l'installazione di SQL Server: <drive>:\\Programmi\Microsoft SQL Server\InstanceName>\MSSQL\<Install\oracleadmin.sql. È inoltre descritto in Script to Grant Oracle Permissions.

Connettersi al database Oracle utilizzando un account con privilegi DBA ed eseguire lo script. Lo script richiede l'indicazione del nome utente e della password per lo schema utente di amministrazione della replica e dello spazio tabella in cui creare gli oggetti (lo spazio tabella deve essere già disponibile nel database Oracle). Per informazioni sull'impostazione di altri spazi tabella per gli oggetti, vedere Gestire spazi di tabella Oracle. Scegliere un nome utente e una password complessa e prenderne nota poiché verranno richiesti durante la configurazione del database Oracle come server di pubblicazione. È consigliabile utilizzare lo schema solo per gli oggetti necessari alla replica ed evitare di creare tabelle da pubblicare in questo schema.

Creazione manuale di uno schema utente

Se si crea manualmente uno schema utente di amministrazione della replica, è necessario concedere allo schema le autorizzazioni seguenti, in modo diretto o tramite un ruolo di database.

  • CREATE PUBLIC SYNONYM e DROP PUBLIC SYNONYM

  • CREATE PROCEDURE

  • CREATE SEQUENCE

  • CREATE SESSION

È inoltre necessario concedere direttamente le autorizzazioni seguenti all'utente (senza utilizzare un ruolo):

  • CREATE ANY TRIGGER. È obbligatorio solo in caso di replica transazionale e snapshot.

  • CREA TABELLA

  • CREATE VIEW

Installazione e configurazione del software di rete client Oracle nel server di distribuzione SQL Server

È necessario installare e configurare il software di rete client Oracle e il provider Oracle OLE DB nel server di distribuzione SQL Server, in modo che il server di distribuzione possa effettuare connessioni al server di pubblicazione Oracle. Dopo aver installato il software, impostare le autorizzazioni appropriate per le cartelle in cui è installato il software e quindi arrestare e riavviare l'istanza di SQL Server per assicurarsi che tutte le impostazioni vengano aggiornate (le autorizzazioni vengono descritte più avanti nella sezione "Impostazione autorizzazioni directory").

Nota

La versione del software di rete client Oracle deve essere aggiornata. È consigliabile installare l'ultima versione del software client. Per tale motivo, la versione del software client è spesso successiva a quella del software del database.

Il modo più diretto per installare e configurare il software di rete client consiste nell'utilizzare Oracle Universal Installer e Net Configuration Assistant dal disco del client Oracle.

In Oracle Universal Installer, è necessario inserire le informazioni seguenti:

Informazioni Descrizione
Oracle Home Percorso della directory di installazione del software Oracle. Accettare il percorso predefinito (C:\oracle\ora90 o simile) o inserirne un altro. Per ulteriori informazioni su Oracle Home, vedere la sezione relativa alle considerazioni su Oracle Home più avanti in questo argomento.
Oracle home name Alias del percorso di Oracle Home.
Installation type In Oracle 10g, selezionare l'opzione di installazione Administrator .

Dopo aver completato la procedura di Oracle Universal Installer, utilizzare Net Configuration Assistant per configurare la connettività di rete. È necessario indicare quattro informazioni per configurare la connettività di rete. L'amministratore del database Oracle definisce la configurazione di rete quando imposta il database e il listener e deve essere in grado di offrire queste informazioni se l'utente non le possiede. Eseguire le operazioni seguenti:

Azione Descrizione
Identificazione del database Per l'identificazione del database sono disponibili due modalità. La prima modalità utilizza il SID (Oracle System Identifier) ed è disponibile in ogni release di Oracle. La seconda utilizza il Service Name, disponibile a partire da Oracle 8.0. Entrambe le modalità utilizzano un valore configurato alla creazione del database ed è importante che la configurazione di rete del client utilizzi la stessa modalità di denominazione utilizzata dall'amministratore nella configurazione del listener per il database.
Identificazione di un alias di rete per il database È necessario specificare un alias di rete che verrà utilizzato per accedere al database Oracle. Questo alias viene inoltre fornito quando si identifica il database Oracle come server di pubblicazione nel server di distribuzione di SQL Server. Si tratta in sostanza di un puntatore al Service Name o al SID remoto che è stato configurato quando è stato creato il database. Per l'alias di rete sono stati utilizzati diversi nomi nelle diverse release e nei diversi prodotti Oracle, tra cui Net Service Name e TNS Alias. SQL*Plus richiede questo alias come parametro "Host String" al momento dell'accesso.
Selezione del protocollo di rete Selezionare i protocolli appropriati che si desidera supportare. La maggioranza delle applicazioni utilizza il protocollo TCP.
Inserimento dei dati host per identificare il listener del database L'host è il nome o l'alias DNS del computer su cui viene eseguito il listener Oracle, in genere lo stesso computer contenente il database. Per alcuni protocolli è necessario indicare informazioni aggiuntive. Ad esempio, se si seleziona il protocollo TCP è necessario indicare la porta su cui il listener rimane in attesa di richieste di connessione al database di destinazione. La configurazione TCP predefinita utilizza la porta 1521.

Impostazione delle autorizzazioni per le directory

L'account in cui viene eseguito il servizio SQL Server nel server di distribuzione deve essere concesso le autorizzazioni di lettura ed esecuzione per la directory (e tutte le sottodirectory) in cui è installato il software di rete client Oracle.

Verifica della connettività tra il server di distribuzione SQL Server e il server di pubblicazione Oracle

Nei passaggi finali di Net Configuration Assistant può essere disponibile un'opzione che consente di testare la connessione al server di pubblicazione Oracle. Prima di verificare la connessione, verificare che l'istanza del database Oracle sia online e che il listener Oracle sia in esecuzione. Se la verifica non riesce, rivolgersi al DBA Oracle responsabile del database a cui si tenta di connettersi.

Dopo aver stabilito una connessione al server di pubblicazione Oracle, tentare di eseguire l'accesso al database utilizzando l'account e la password associati allo schema utente di amministrazione della replica creato. È necessario eseguire le operazioni seguenti durante l'esecuzione nello stesso account Windows usato dal servizio SQL Server:

  1. Fare clic sul pulsante Starte quindi scegliere Esegui.

  2. Digitare cmd e fare clic su OK.

  3. Al prompt dei comandi digitare:

    sqlplus <UserSchemaLogin>/<UserSchemaPassword>@<NetServiceName>

    Ad esempio: sqlplus replication/$tr0ngPasswerd@Oracle90Server

  4. Se la configurazione di rete è riuscita, sarà possibile accedere e verrà visualizzato il prompt SQL .

  5. Se si verificano problemi durante la connessione al database Oracle, vedere la sezione relativa all'impossibilità di connessione del server di distribuzione SQL Server all'istanza del database Oracle in Troubleshooting Oracle Publishers.

Considerazioni su Oracle Home

Oracle supporta l'installazione side-by-side di file binari dell'applicazione, ma la replica può utilizzare un solo set di file binari alla volta. Ogni set di file binari è associato a un Oracle Home; tali file si trovano nella directory %ORACLE_HOME%\bin. Quando la replica stabilisce le connessioni al server di pubblicazione Oracle è necessario verificare che venga utilizzato il set corretto di file binari, in particolare la versione più recente del software di rete client.

Accedere al server di distribuzione con gli account usati dal servizio SQL Server e dal servizio SQL Server Agent e impostare le variabili di ambiente appropriate. La variabile %ORACLE_HOME% deve essere impostata in modo da fare riferimento al punto di installazione specificato quando è stato installato il software client di rete. %PATH% deve includere la directory %ORACLE_HOME% \bin come prima voce Oracle rilevata. Per informazioni sull'impostazione delle variabili d'ambiente, vedere la documentazione di Windows.

Configurazione del database Oracle come server di pubblicazione nel server di distribuzione SQL Server

I server di pubblicazione Oracle usano sempre un server di distribuzione remoto; È necessario configurare un'istanza di SQL Server in modo da fungere da server di distribuzione per il server di pubblicazione Oracle. Un server di pubblicazione Oracle può usare un solo server di distribuzione, ma un server di distribuzione singolo può gestire più server di pubblicazione Oracle. Dopo aver configurato un server di distribuzione, identificare l'istanza del database Oracle come server di pubblicazione nel server di distribuzione SQL Server tramite SQL Server Management Studio, Transact-SQL o RMO (Replication Management Objects). Per altre informazioni sulla configurazione di un database di distribuzione, vedere Configurare la distribuzione.

Nota

Un server di pubblicazione Oracle non può avere lo stesso nome del server di distribuzione SQL Server o lo stesso nome di uno dei server di pubblicazione SQL Server utilizzando lo stesso server di distribuzione.

Quando si identifica il database Oracle come server di pubblicazione, è necessario scegliere un'opzione di pubblicazione Oracle: Complete o Oracle Gateway. Dopo aver identificato un server di pubblicazione, questa opzione può essere modificata solo eliminando e riconfigurando il server di pubblicazione. L'opzione Complete è progettata per offrire alle pubblicazioni snapshot e transazionali il set completo di funzionalità supportate per la pubblicazione Oracle. L'opzione Oracle Gateway prevede ottimizzazioni della progettazione specifiche per migliorare le prestazioni quando la replica funge da gateway tra i sistemi.

Dopo l'identificazione del server di pubblicazione Oracle nel server di distribuzione SQL Server, la replica crea un server collegato con lo stesso nome del nome del servizio TNS del database Oracle. Tale server può essere utilizzato solo dalla replica. Se è necessario connettersi al server di pubblicazione Oracle tramite una connessione al server collegato, creare un altro nome del servizio TNS e quindi usare questo nome quando si chiama sp_addlinkedserver (Transact-SQL).

Per configurare un server di pubblicazione Oracle e creare una pubblicazione, vedere Create a Publication from an Oracle Database.

Vedere anche

Considerazioni amministrative per i server di pubblicazione Oracle
Data Type Mapping for Oracle Publishers
Glossario dei termini per la pubblicazione Oracle
Panoramica della pubblicazione Oracle