È possibile creare database link a un'istanza di Autonomous Database da un database Oracle che non è un'istanza di Autonomous Database. Ad esempio, da un database Oracle on premise ad un Autonomous Database
-
Le versioni di Oracle Database supportate per i database link in cui l'origine è un Oracle Database e la destinazione è un'istanza di Autonomous Database sono le seguenti: 19.2 (o versioni successive), 21 (release di base o successive).
-
Se si utilizzano database link tra Autonomous Database e altri database Oracle, potrebbe essere necessario applicare la patch 33843368 su Oracle Database che non è un Autonomous Database. Ciò si applica ai casi in cui l'istanza di Autonomous Database è l'origine o la destinazione del database link.
Per ulteriori dettagli, vedere la Knowledge Base di My Oracle Support: Requisito di patch per i database link tra ADB-S e altri database Oracle (ID documento 2874244.1).
Per creare i database link a un Autonomous Database, effettuare le operazioni riportate di seguito.
- Scaricare il wallet di Autonomous Database. Per ulteriori informazioni, vedere Scarica credenziali client (wallet).
- Caricare il wallet nell'istanza di database in cui si desidera creare il collegamento ad Autonomous Database.
- Estrarre il wallet di Autonomous Database:
Nota
Il file wallet, insieme all'ID utente e alla password del database, fornisce l'accesso ai dati in Autonomous Database. Memorizzare i file wallet in una posizione sicura. Condividere i file wallet solo con utenti autorizzati.
[oracle@sys1 ~]$ cd/u01/targetwallet
[oracle@sys1 targetwallet]$ unzip Wallet_name1.zip
Archive: Wallet_name1.zip
inflating: cwallet.sso
inflating: tnsnames.ora
inflating: truststore.jks
inflating: ojdbc.properties
inflating: sqlnet.ora
inflating: ewallet.p12
inflating: keystore.jks
- Impostare
GLOBAL_NAMES
su FALSE
.
SQL> ALTER SYSTEM SET GLOBAL_NAMES = FALSE;
System altered.
SQL> SHOW PARAMETER GLOBAL_NAMES
NAME TYPE VALUE
---------------------- ----------- -----------
global_names boolean FALSE
Impostare GLOBAL_NAMES
su FALSE
per utilizzare un nome di database link senza verificare che il nome sia diverso dal database remoto name.When GLOBAL_NAMES
, sia impostato su TRUE
, il database richiede che il database link abbia lo stesso nome del database a cui si connette. Per ulteriori informazioni, vedere GLOBAL_NAMES.
- Creare il database link all'Autonomous Database di destinazione. Tenere presente che il percorso
security
include my_wallet_directory
; il percorso in cui estrarre il wallet di Autonomous Database.
CREATE DATABASE LINK ADBLINK
CONNECT TO NAME1 IDENTIFIED BY ************
USING
'(description=(retry_count=20)(retry_delay=3)
(address=(protocol=tcps)(port=1522)(host=example1.oraclecloud.com))
(connect_data=(service_name=example2_high.adb.oraclecloud.com))
(security=(my_wallet_directory=/u01/targetwallet)
(ssl_server_dn_match=true)))';
Database link created.
- Utilizzare il database link creato per accedere ai dati nel database di destinazione (l'istanza di Autonomous Database in questo caso):
Ad esempio:
SELECT * FROM employees@ADBLINK;
Per elencare i database link, utilizzare la vista ALL_DB_LINKS
. Vedere ALL_DB_LINKS.
Per ulteriori informazioni, vedere: