Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
I server collegati con Oracle Provider for OLEDB su RDS per SQL Server consentono di accedere alle origini dei dati esterne in un database Oracle. È possibile leggere dati da origini dei dati Oracle remote ed eseguire comandi su server di database Oracle remoti all'esterno dell'istanza database RDS per SQL Server. Utilizzando i server collegati con Oracle OLEDB, è possibile:
-
Accedere direttamente a origini dei dati diverse da SQL Server
-
Eseguire query su origini dei dati Oracle diverse con la stessa query senza spostare i dati
-
Eseguire query, aggiornamenti, comandi e transazioni distribuiti sulle origini dei dati in un ecosistema aziendale
-
Integrare le connessioni a un database Oracle dall'interno della suite Microsoft Business Intelligence (SSIS, SSRS, SSAS)
-
Eseguire la migrazione da un database Oracle a RDS per SQL Server
È possibile attivare uno o più server collegati per Oracle su un'istanza database RDS per SQL Server nuova o esistente. Quindi puoi integrare le origini dei dati Oracle esterne nella tua istanza database.
Indice
Versioni e regioni supportate
RDS per SQL Server supporta i server collegati con Oracle OLEDB in tutte le regioni per SQL Server Standard ed Enterprise Edition nelle seguenti versioni:
-
SQL Server 2022, tutte le versioni
-
SQL Server 2019, tutte le versioni
-
SQL Server 2017, tutte le versioni
I server collegati con Oracle OLEDB sono supportati per le seguenti versioni di Oracle Database:
-
Oracle Database 21c, tutte le versioni
-
Oracle Database 19c, tutte le versioni
-
Oracle Database 18c, tutte le versioni
Limitazioni e consigli
Tieni presente le seguenti limitazioni e raccomandazioni che si applicano ai server collegati con Oracle OLEDB:
-
Consenti il traffico di rete aggiungendo la porta TCP applicabile nel gruppo di sicurezza per ogni istanza database RDS per SQL Server. Ad esempio, se stai configurando un server collegato tra un'istanza database Oracle EC2 e un'istanza database RDS per SQL Server, devi consentire il traffico dall'indirizzo IP dell'istanza database Oracle EC2. È inoltre necessario consentire il traffico sulla porta utilizzata da SQL Server per ascoltare le comunicazioni con il database. Per ulteriori informazioni sui gruppi di sicurezza, consulta Controllo dell'accesso con i gruppi di sicurezza.
-
Esegui un riavvio dell'istanza database RDS per SQL Server dopo aver attivato, disattivato o modificato l'opzione
OLEDB_ORACLE
nel tuo gruppo di opzioni. Lo stato del gruppo di opzioni èpending_reboot
per questi eventi ed è obbligatorio. -
È supportata solo l'autenticazione semplice con un nome utente e una password per l'origine dei dati Oracle.
-
I driver Open Database Connectivity (ODBC) non sono supportati. È supportata solo la versione più recente del driver OLEDB.
-
Le transazioni distribuite (XA) sono supportate. Per attivare le transazioni distribuite, attiva l'opzione
MSDTC
nel gruppo di opzioni per la tua istanza database e assicurati che le transazioni XA siano attivate. Per ulteriori informazioni, consulta Support per Microsoft Distributed Transaction Coordinator in RDS for Server SQL. -
La creazione di nomi di origine dei dati (DSN) da utilizzare come scelta rapida per una stringa di connessione non è supportata.
-
Il tracciamento dei driver OLEDB non è supportato. È possibile utilizzare gli eventi estesi SQL Server per tracciare gli eventi OLEDB. Per ulteriori informazioni, consulta Set up Extended Events in RDS for SQL Server
(Impostazione degli eventi estesi in RDS per SQL Server). -
L'accesso alla cartella dei cataloghi per un server collegato Oracle non è supportato con SQL Server Management Studio (SSMS).
Attivazione di server collegati con Oracle
Attiva i server collegati con Oracle aggiungendo l' opzione OLEDB_ORACLE
all'istanza database RDS per SQL Server. Utilizzare il seguente processo:
-
Creare un nuovo gruppo di opzioni oppure utilizzare un gruppo di opzioni esistente.
-
Aggiungere l'opzione
OLEDB_ORACLE
al gruppo di opzioni. -
Scegli la versione del driver OLEDB da usare.
-
Associare il gruppo di opzioni a questa istanza database.
-
Riavvia l'istanza database.
Creazione del gruppo di opzioni per OLEDB_ORACLE
Per utilizzare i server collegati con Oracle, crea un gruppo di opzioni o modifica un gruppo di opzioni che corrisponda all'edizione di SQL Server e alla versione dell'istanza database che vuoi utilizzare. Per completare questa procedura, utilizza la AWS Management Console o AWS CLI.
La seguente procedura crea un gruppo di opzioni per SQL Server Standard Edition 2019.
Per creare il gruppo di opzioni
Accedi alla AWS Management Console e apri la console Amazon RDS all'indirizzo https://console.aws.amazon.com/rds/
. -
Nel pannello di navigazione scegliere Option groups (Gruppi di opzioni).
-
Seleziona Create group (Crea gruppo).
-
Nella finestra Create option group (Crea gruppo di opzioni) eseguire queste operazioni:
-
Per Nome, immettere un nome per il gruppo di opzioni che sia univoco all'interno dell'account AWS, ad esempio
oracle-oledb-se-2019
. Il nome può includere solo lettere, cifre e trattini. -
Per Descrizione, immettere una breve descrizione del gruppo di opzioni, ad esempio
OLEDB_ORACLE option group for SQL Server SE 2019
. La descrizione viene usata per la visualizzazione. -
Per Engine (Motore), scegliere sqlserver-se.
-
Per Major engine version (Versione del motore principale), scegli 15.00.
-
-
Scegli Crea.
La seguente procedura crea un gruppo di opzioni per SQL Server Standard Edition 2019.
Per creare il gruppo di opzioni
-
Eseguire uno dei seguenti comandi.
Per LinuxmacOS, oUnix:
aws rds create-option-group \ --option-group-name
oracle-oledb-se-2019
\ --engine-namesqlserver-se
\ --major-engine-version15.00
\ --option-group-description "OLEDB_ORACLE option group for SQL Server SE 2019
"Per Windows:
aws rds create-option-group ^ --option-group-name
oracle-oledb-se-2019
^ --engine-namesqlserver-se
^ --major-engine-version15.00
^ --option-group-description "OLEDB_ORACLE option group for SQL Server SE 2019
"
Aggiunta dell'opzione OLEDB_ORACLE
al gruppo di opzioni
Utilizzare la AWS Management Console o l'AWS CLI per aggiungere l'opzione OLEDB_ORACLE
al gruppo di opzioni.
Per aggiungere l'opzione OLEDB_ORACLE
Accedi alla AWS Management Console e apri la console Amazon RDS all'indirizzo https://console.aws.amazon.com/rds/
. -
Nel pannello di navigazione scegliere Option groups (Gruppi di opzioni).
-
Scegliete il gruppo di opzioni che avete appena creato, che in questo esempio è oracle-oledb-se-2019.
-
Scegliere Add option (Aggiungi opzione).
-
In Option details (Dettagli opzione), scegli OLEDB_ORACLE per Option name (Nome opzione).
-
In Scheduling (Pianificazione), scegliere se aggiungere l'opzione immediatamente o alla finestra di manutenzione successiva.
-
Scegliere Add option (Aggiungi opzione).
Per aggiungere l'opzione OLEDB_ORACLE
-
Aggiungere l'opzione
OLEDB_ORACLE
al gruppo di opzioni.Per LinuxmacOS, oUnix:
aws rds add-option-to-option-group \ --option-group-name
oracle-oledb-se-2019
\ --options OptionName=OLEDB_ORACLE \ --apply-immediatelyPer Windows:
aws rds add-option-to-option-group ^ --option-group-name
oracle-oledb-se-2019
^ --options OptionName=OLEDB_ORACLE ^ --apply-immediately
Associazione del gruppo di opzioni all'istanza database
Per associare il gruppo di opzioni OLEDB_ORACLE
e il gruppo di parametri all'istanza database, utilizza la AWS Management Console o AWS CLI
Per completare l'attivazione dei server collegati per Oracle, associa il gruppo di opzioni OLEDB_ORACLE
a un'istanza database nuova o esistente:
-
Per una nuova istanza database, associarli all'avvio dell'istanza. Per ulteriori informazioni, consulta Creazione di un'istanza Amazon RDS DB.
-
Per un'istanza database esistente, associarli modificando l'istanza. Per ulteriori informazioni, consulta Modifica di un'istanza Amazon RDS DB.
Puoi associare il gruppo di opzioni OLEDB_ORACLE
e il gruppo di parametri a un'istanza database nuova o esistente.
Per creare un'istanza con il gruppo di opzioni OLEDB_ORACLE
e il gruppo di parametri
-
Specificare lo stesso tipo di motore database e la versione principale utilizzata durante la creazione del gruppo di opzioni.
Per LinuxmacOS, oUnix:
aws rds create-db-instance \ --db-instance-identifier
mytestsqlserveroracleoledbinstance
\ --db-instance-classdb.m5.2xlarge
\ --enginesqlserver-se
\ --engine-version15.0.4236.7.v1
\ --allocated-storage100
\ --manage-master-user-password \ --master-usernameadmin
\ --storage-typegp2
\ --license-modelli
\ --domain-iam-role-namemy-directory-iam-role
\ --domainmy-domain-id
\ --option-group-nameoracle-oledb-se-2019
\ --db-parameter-group-namemy-parameter-group-name
Per Windows:
aws rds create-db-instance ^ --db-instance-identifier
mytestsqlserveroracleoledbinstance
^ --db-instance-classdb.m5.2xlarge
^ --enginesqlserver-se
^ --engine-version15.0.4236.7.v1
^ --allocated-storage100
^ --manage-master-user-password ^ --master-usernameadmin
^ --storage-typegp2
^ --license-modelli
^ --domain-iam-role-namemy-directory-iam-role
^ --domainmy-domain-id
^ --option-group-nameoracle-oledb-se-2019
^ --db-parameter-group-namemy-parameter-group-name
Per modificare un'istanza e associare il gruppo di opzioni OLEDB_ORACLE
-
Eseguire uno dei seguenti comandi.
Per LinuxmacOS, oUnix:
aws rds modify-db-instance \ --db-instance-identifier
mytestsqlserveroracleoledbinstance
\ --option-group-nameoracle-oledb-se-2019
\ --db-parameter-group-namemy-parameter-group-name
\ --apply-immediatelyPer Windows:
aws rds modify-db-instance ^ --db-instance-identifier
mytestsqlserveroracleoledbinstance
^ --option-group-nameoracle-oledb-se-2019
^ --db-parameter-group-namemy-parameter-group-name
^ --apply-immediately
Modifica delle proprietà del provider OLEDB
È possibile visualizzare e modificare le proprietà del provider OLEDB. Solo l'utente master
può eseguire questa attività. Tutti i server collegati per Oracle creati sull'istanza database utilizzano le stesse proprietà del provider OLEDB. Chiama la stored procedure sp_MSset_oledb_prop
per modificare le proprietà del provider OLEDB.
Per modificare le proprietà del provider OLEDB
USE [master]
GO
EXEC sp_MSset_oledb_prop N'OraOLEDB.Oracle', N'AllowInProcess', 1
EXEC sp_MSset_oledb_prop N'OraOLEDB.Oracle', N'DynamicParameters', 0
GO
È possibile modificare le seguenti proprietà:
Nome proprietà | Valore consigliato (1 = attivato, 0 = disattivato) | Descrizione |
---|---|---|
|
1 |
Consente segnaposti SQL (rappresentati da "?") nelle query parametrizzate. |
|
1 |
Consente istruzioni annidate |
|
0 |
Solo le interfacce OLEDB di livello base vengono chiamate sul provider. |
|
1 |
Se attivato, Microsoft SQL Server consente di creare l'istanza del provider come server in esecuzione. Imposta questa proprietà su 1 per utilizzare i server collegati Oracle. |
|
0 |
Se diverso da zero, SQL Server consente gli aggiornamenti. |
|
False |
Se diverso da zero, SQL Server tenta di utilizzare gli indici del provider per recuperare i dati. |
|
False |
Se impostato, SQL Server non consente l'esecuzione di query pass-through sul provider OLEDB. Sebbene questa opzione possa essere selezionata, a volte è opportuno eseguire query pass-through. |
|
1 |
Indica che il provider supporta le query utilizzando la parola chiave LIKE. |
Modifica delle proprietà del driver OLEDB
È possibile visualizzare e modificare le proprietà del driver OLEDB per la creazione di un server collegato per Oracle. Solo l'utente master
può eseguire questa attività. Le proprietà del driver definiscono il modo in cui il driver OLEDB gestisce i dati quando utilizza un'origine dei dati Oracle remota. Le proprietà del driver sono specifiche per ogni server collegato Oracle creato nell'istanza database. Chiama la stored procedure master.dbo.sp_addlinkedserver
per modificare le proprietà del driver OLEDB.
Esempio: per creare un server collegato e modificare la proprietà FetchSize
del driver OLEDB
EXEC master.dbo.sp_addlinkedserver
@server = N'Oracle_link2'
,
@srvproduct=N'Oracle'
,
@provider=N'OraOLEDB.Oracle'
,
@datasrc=N'my-oracle-test.cnetsipka.us-west-2.rds.amazonaws.com:1521/ORCL
,
@provstr='FetchSize=200'
GO
EXEC master.dbo.sp_addlinkedsrvlogin
@rmtsrvname=N'Oracle_link2'
,
@useself=N'False'
,
@locallogin=NULL
,
@rmtuser=N'master'
,
@rmtpassword='Test#1234'
GO
Nota
Specifica una password diversa dal prompt mostrato qui come best practice per la sicurezza.
Disattivazione dei server collegati con Oracle
Per disattivare i server collegati con Oracle, rimuovi l'opzione OLEDB_ORACLE
dal gruppo di opzioni.
Importante
La rimozione dell'opzione non elimina le configurazioni del server collegato esistente nell'istanza database. È necessario eliminarle manualmente per rimuoverle dall'istanza database.
È possibile riattivare l'opzione OLEDB_ORACLE
dopo la rimozione per riutilizzare le configurazioni del server collegato precedentemente presenti nell'istanza database.
La procedura seguente rimuove l'opzione OLEDB_ORACLE
.
Per rimuovere l'opzione OLEDB_ORACLE dal suo gruppo di opzioni
Accedi alla AWS Management Console e apri la console Amazon RDS all'indirizzo https://console.aws.amazon.com/rds/
. -
Nel pannello di navigazione scegliere Option groups (Gruppi di opzioni).
-
Scegliere il gruppo di opzioni con l'opzione
OLEDB_ORACLE
(oracle-oledb-se-2019
negli esempi precedenti). -
Scegliere Delete option (Elimina opzione).
-
In Deletion options (Opzioni di eliminazione), scegli OLEDB_ORACLE per Options to delete (Opzioni da eliminare).
-
In Apply immediately (Applica immediatamente), scegli Yes (Sì) per eliminare immediatamente l'opzione oppure No per eliminarla nella finestra di manutenzione successiva.
-
Scegli Elimina.
La procedura seguente rimuove l'opzione OLEDB_ORACLE
.
Per rimuovere l'opzione OLEDB_ORACLE dal suo gruppo di opzioni
-
Eseguire uno dei seguenti comandi.
Per LinuxmacOS, oUnix:
aws rds remove-option-from-option-group \ --option-group-name
oracle-oledb-se-2019
\ --options OLEDB_ORACLE \ --apply-immediatelyPer Windows:
aws rds remove-option-from-option-group ^ --option-group-name
oracle-oledb-se-2019
^ --options OLEDB_ORACLE ^ --apply-immediately