Configurare e connettersi a Oracle Autonomous Database
Ottenere i file di configurazione di Oracle Autonomous Database e installarli sul computer in cui è installato CMAN-TDM.
Configurare i file wallet di Oracle Autonomous Database mediante il protocollo TLS reciproco
- Accedi alla console di Oracle Cloud Infrastructure e vai all'area in cui risiede il database autonomo.
- Andare alla pagina Autonomous Database, quindi fare clic sulla scheda Connessione DB.Vengono visualizzati i dettagli di Autonomous Database.
- Fare clic su Scarica wallet.Verrà richiesta una password del wallet.
- Fornire una password, quindi scaricare il file ZIP del wallet nel computer locale. Trasferire il file ZIP scaricato nel computer Linux utilizzando l'applicazione o il metodo di trasferimento file SSH preferito. È importante salvare (o ricordare) la password del wallet. Utilizzare la password in un secondo momento in questa soluzione.Andare al passo successivo dopo che il file ZIP del wallet si trova nel computer Linux.
- Estrarre il contenuto nella directory
$TNS_ADMIN.Nota
Questa posizione potrebbe essere il percorso$ORACLE_HOME/network/adminpredefinito dell'installazione del computer CMAN-TDM.Il wallet non contiene credenziali di nome utente e password del database, ma è comunque necessario mantenere il wallet e i file in una posizione sicura per un uso successivo.
Di seguito è riportato un esempio dei file estratti.
-rw-r--r--. 1 oracle oinstall 7085 Sep 3 07:24 cwallet.sso -rw-r--r--. 1 oracle oinstall 7040 Sep 3 07:24 ewallet.p12 -rw-r--r--. 1 oracle oinstall 3243 Aug 24 14:25 keystore.jks -rw-r--r--. 1 oracle oinstall 691 Aug 24 14:25 ojdbc.properties -rw-r--r--. 1 oracle oinstall 3387 Aug 24 14:25 README -rw-r--r--. 1 oracle oinstall 235 Sep 3 08:00 sqlnet.ora -rw-r--r--. 1 oracle oinstall 1832 Sep 3 08:41 tnsnames.ora -rw-r--r--. 1 oracle oinstall 3336 Aug 24 14:25 truststore.jksI file principali richiesti per il caso d'uso corrente sono
cwallet.sso,ewallet.p12,sqlnet.oraetnsnames.ora. Gli altri file sono necessari solo se l'utente prevede di connettersi tramite un'applicazione JDBC. - Modificare il file
sqlnet.orae modificare la posizione del wallet DIRECTORY nella DIRECTORY contenente il filecwallet.sso:WALLET_LOCATION = (SOURCE = (METHOD = file) (METHOD_DATA = (DIRECTORY="/u01/app/oracle/network/admin"))) SSL_SERVER_DN_MATCH=yesOra che il wallet è impostato, è possibile connettersi al database utilizzando una delle stringhe di connessione "nome servizio di rete" da
tnsnames.ora(ad esempio,exampledb_high). - Aprire il file
tnsnames.orae memorizzare i dettagli di connessione del database autonomo in un altro file, ad esempio$HOME/dbdetails.txt:Durante la configurazione di CMAN-TDM, verranno utilizzati i parametri relativi a indirizzo, sicurezza e nome del servizio dell'Autonomous Database. - (Facoltativo) Controllare la connessione al database utilizzando SQL*Plus.
-
Se SQL*Plus si trova sullo stesso computer di CMAN-TDM, è possibile visualizzare il file
tnsnames.oradalla directory wallet$TNS_ADMIN. -
Se SQL*Plus è installato su un computer diverso da CMAN-TDM, copiare i file wallet di Autonomous Database nella directory
$TNS_ADMINdel computer in cui è installato SQL*Plus. Copiare quindi i dettagli del database dalla sezione precedente nel file$TNS_ADMIN/tnsnames.orasullo stesso computer.
Il file
$TNS_ADMIN/tnsnames.oracontiene diversi nomi di servizio di rete (a sinistra dei segni "="). È possibile utilizzare qualsiasi, a seconda del livello di prestazioni e concorrenza del servizio desiderato dal database.Eseguire SQL*Plus come utente
ADMINe immettere la password dell'utente impostata durante la creazione del database:$ sqlplus -l admin@adb-name_highAl termine dell'operazione, si verrà connessi al database. -
Configurare CMAN per connettersi a Oracle Autonomous Database
cman.ora) con tutte le specifiche presenti nella directory $TNS_ADMIN del computer CMAN-TDM. La directory si trova spesso in ORACLE_HOME/network/admin.
Il file cman.ora è il file di configurazione principale letto da CMAN-TDM. Contiene tutti i dettagli di configurazione per consentire a Traffic Director e CMAN di connettersi a Oracle Autonomous Database.
- Eseguire il login come utente
oracle. - Andare alla directory
$TNS_ADMINe creare il filecman.ora.$ cd $TNS_ADMIN $ vi cman.ora - Configurare il file
cman.ora.In questo esempio, il nome dell'istanza CMAN-TDM ècman-test. L'applicazione client si connette al processo CMAN tramite il protocollo TCP e CMAN si connette a Oracle Autonomous Database tramite il protocollo TCPS.Il parametro address contiene il nome host, protocollo del server CMAN-TDM. Il file
cman.oradi esempio riportato di seguito utilizza TCP e numero di porta 1523. È possibile scegliere qualsiasi numero di porta disponibile sul computer Linux.Configurare i parametri seguenti:
tdm=true: Importante. Per abilitare la modalità Traffic Director è necessario impostare il parametrotdmsu true.tdm_threading_mode=dedicated: in questo esempio viene eseguito CMAN-TDM in modalità dedicata, che è la modalità predefinita per la modalità Traffic Director. È possibile eseguire la modalità Traffic Director in modalità condivisa.log_level: impostato per abilitare il livello di registrazione richiesto a scopo di test e debug.max_connections: impostato in base ai requisiti di prestazioni.idle_timeout=0registration_invited_nodes= *inbound_connect_timeout=0session_timeout=0outbound_connect_timeout=0max_gateway_processes: Impostare in base ai requisiti di prestazioni.min_gateway_processes: Impostare in base ai requisiti di prestazioni.trace_level: impostato per abilitare il livello di trace richiesto a scopo di test e debug.max_cmctl_sessions: Impostare in base ai requisiti di prestazioni.event_group:init_and_term,memory_opsnext_hop: il parametro punta ai dettagli dell'indirizzo di Oracle Autonomous Database insieme ai dettagli SSL. Questi dettagli sono tratti dal filedbdetails.txt, creato nella sezione precedente.WALLET_LOCATION: il parametro punta alla posizione del wallet utente dell'applicazione Modalità Traffic Director, che verrà creato più avanti in questa sezione.SQLNET.WALLET_OVERRIDE= VERO
Di seguito è riportato un esempio di filecman.ora.exampledb_high = (description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=adb.us-ashburn-1.oraclecloud.com))(connect_data=(service_name=g5cadf7d7e4c6c8_exampledb_high.adb.oraclecloud.com))(security=(ssl_server_cert_dn="CN=adwc.uscom-east-1.oraclecloud.com, OU=Oracle BMCS US, O=Oracle Corporation, L=Redwood City, ST=California, C=US"))) cman-test = (configuration= (address=(protocol=tcp)(host=oracle-cloud-linuxvm)(port=1523)) (parameter_list = (tdm=true) (tdm_threading_mode=dedicated) (log_level=off) (max_connections=50) (idle_timeout=0) (registration_invited_nodes = *) (inbound_connect_timeout=0) (session_timeout=0) (outbound_connect_timeout=0) (max_gateway_processes=8) (min_gateway_processes=3) (trace_level=support) (max_cmctl_sessions=4) (event_group=init_and_term,memory_ops) ) (next_hop=(description=(address=(protocol=tcps)(port=1522)(host=adb.us-ashburn-1.oraclecloud.com))(security=(ssl_server_dn_match=on)(ssl_server_cert_dn="CN=adwc.uscom-east-1.oraclecloud.com, OU=Oracle BMCS US, O=Oracle Corporation, L=Redwood City, ST=California, C=US")))) (rule_list= (rule= (src=*)(dst=*)(srv=*)(act=accept) (action_list=(aut=off)(moct=0)(mct=0)(mit=0)(conn_stats=on)) ) ) ) WALLET_LOCATION = (SOURCE = (METHOD = file) (METHOD_DATA = (DIRECTORY="/u01/app/oracle/network/admin"))) SQLNET.WALLET_OVERRIDE = TRUE - Creare un utente proxy del database (
tdm) per ottenere tutte le autorizzazioni necessarie per abilitare la modalità Traffic Director (TDM).- Eseguire il login a Oracle Autonomous Database tramite SQL*Plus come utente
admin.$ sqlplus admin@exampledb_high SQL*Plus: Release 21.0.0.0.0 - Production on Tue May 6 15:34:43 2025 Version 21.3.0.0.0 Copyright (c) 1982, 2025, Oracle. All rights reserved. Enter password: Last Successful login time: Tue May 06 2025 15:33:09 +00:00 Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.12.0.1.0 - Creare un utente proxy del database. In questo esempio viene utilizzato
tdmcome utente proxy del database.SQL> create user tdm identified by {password} -- replace {password} with your actual password User created. SQL> grant create session to tdm; Grant succeeded. - Uscire da SQL*Plus.
- Eseguire il login a Oracle Autonomous Database tramite SQL*Plus come utente
- Creare il wallet utente proxy del database.
Aggiungere le credenziali utente TDM al wallet Autonomous Database esistente.
- Andare alla directory
$TNS_ADMINin cui si trova il wallet di Autonomous Database.La directory è spesso$ORACLE_HOME/network/admin.$ cd $TNS_ADMIN - Aggiungere i dettagli utente
tdmal wallet Autonomous Database utilizzando la utilitymkstorepresente nella directory$ORACLE_HOME/bin.Nota
- Per il parametro service_name, immettere il nome del servizio presente nel file
dbdetails.txtcreato in precedenza. - Per i parametri username e password, immettere le credenziali utente
tdm. Ripetere questa operazione se si desidera che gli altri servizi (ad esempioexampledb_low) siano disponibili tramitetdm.
Usare la sintassi seguente:
$ORACLE_HOME/bin/mkstore -wrl . -createCredential service_name username password. Ad esempio:$ $ORACLE_HOME/bin/mkstore -wrl . -createCredential g5cadf7d7e4c6c8_exampledb_high.adb.oraclecloud.com tdm {password} - Per il parametro service_name, immettere il nome del servizio presente nel file
- Verificare che il wallet sia stato creato correttamente utilizzando la utility
orapki.$ $ORACLE_HOME/bin/orapki wallet display -wallet . Oracle PKI Tool Release 21.0.0.0.0 - Production Version 21.3.0.0.0 Copyright (c) 2004, 2021, Oracle and/or its affiliates. All rights reserved. Requested Certificates: User Certificates: Subject: CN=AAE9D2E1AE8646298FED591FC4A097EA,DNQ=V1 Oracle Secret Store entries: oracle.security.client.connect_string1 oracle.security.client.password1 oracle.security.client.username1 Trusted Certificates: Subject: CN=DigiCert Global Root CA,OU=www.digicert.com,O=DigiCert Inc,C=US Subject: C=US,ST=California,L=Redwood Shores,O=Oracle Corporation Autonomous Data Warehouse Cloud Self-signed CA,CN=Autonomous Data Warehouse Cloud CA Subject: CN=DigiCert SHA2 Secure Server CA,O=DigiCert Inc,C=USL'output deve contenere voci dell'area di memorizzazione dei segreti Oracle, che indica che le credenziali utente
tdmsono memorizzate e che sono certificati protetti e certificati utente (certificati SSL di Autonomous Database). - Verificare che le credenziali utente
tdmsi trovino nel wallet utilizzando la utilitymkstore. Quando viene richiesta la password del wallet, immettere la password del wallet Autonomous Database creata durante il download del file zip del wallet dalla console di Oracle Cloud Infrastructure.$ $ORACLE_HOME/bin/mkstore -wrl . -listCredential Oracle Secret Store Tool Release 21.0.0.0.0 - Production Version 21.3.0.0.0 Copyright (c) 2004, 2021, Oracle and/or its affiliates. All rights reserved. Enter wallet password: List credential (index: connect_string username) 1: g5cadf7d7e4c6c8_exampledb_high.adb.oraclecloud.com tdm
- Andare alla directory
- Connettiti utilizzando un utente dell'applicazione CMAN-TDM su Oracle Autonomous Database.Sarà necessario creare un utente di database 'normale' per l'accesso generale all'applicazione anziché l'utente
ADMINcon privilegi per la connessione a Oracle Autonomous Database tramite CMAN-TDM utilizzando le autorizzazioni dell'utente proxy del database (tdm).Nota
Se si dispone già di uno o più utenti dell'applicazione esistenti in Autonomous Database, saltare questo passo.- Creare un utente del database.
È possibile copiare e personalizzare il seguente script
createuser.sqlper creare l'utente.define USERNAME = &1 -- Uncomment if you want to clean up a previous user -- begin execute immediate 'drop user &USERNAME cascade'; exception when others then if sqlcode <> -1918 then raise; end if; end; -- / create user &USERNAME; alter user &USERNAME default tablespace data temporary tablespace temp account unlock quota unlimited on data; grant connect, resource to &USERNAME; grant create session, create table, create procedure, create sequence, create trigger, create view, create synonym, alter session, create type, soda_app to &USERNAME; password &USERNAME - Avviare SQL*Plus come utente
ADMIN:$ sqlplus -l admin@exampledb_high - Eseguire lo script
createuser.sql.Passare il nome dell'utente come argomento dello script. In questo esempio viene utilizzato
example.Lo script richiederà di impostare la password per questo nuovo utente. La password deve essere conforme alle Linee guida per la password degli utenti di Oracle Autonomous Database. Non sarà possibile creare un utente se non si rispettano le linee guida.
SQL> @createuser.sql exampleIl nuovo utente viene creato non appena si immette la nuova password.
- Creare un utente del database.
- Aggiungere i privilegi
tdmdell'utente proxy del database a tutti gli utenti dell'applicazione che richiedono l'accesso ad Autonomous Database tramite CMAN-TDM, quindi uscire da SQL*Plus.SQL> alter user example grant connect through tdm; User altered. SQL> exit - Verificare che la connessione riesca per il nuovo utente (verrà richiesto di immettere la password):
$ sqlplus -l example@exampledb_high [ . . .] SQL> show user USER is "example" SQL> quit
Questo utente verrà utilizzato per connettersi a Oracle Autonomous Database tramite CMAN-TDM.
Connettiti a Oracle Autonomous Database tramite CMAN
$TNS_ADMIN/tnsnames.ora nel computer in cui è in esecuzione l'applicazione client per aggiungere la connessione.- Aprire la porta CMAN-TDM (in questo caso 1523) prima come utente
rootnella VM Linux di CMAN-TDM se la VM è protetta da un firewall.$ sudo su root $ firewall-cmd --permanent --add-port=1523/tcp $ firewall-cmd --reload - È possibile visualizzare il file
$TNS_ADMIN/tnsnames.oradel computer in cui si trova l'applicazione client per confermare i parametri dell'indirizzo. È possibile aggiungere l'alias di connessione CMAN-TDM nel file.In questo esempio, l'applicazione client SQL*Plus si trova sullo stesso computer di CMAN-TDM.
Il parametro address include l'indirizzo CMAN-TDM. Il parametro
connect_datadeve contenere il parametroservice_nameper Autonomous Database.exampledb_high_cman_tdm = (description= (retry_count=20)(retry_delay=3)(address=(protocol=tcp)(port=1523)(host=oracle-cloud-linuxvm))(connect_data=(service_name=g5cadf7d7e4c6c8_exampledb_high.adb.oraclecloud.com))) - Eseguire la utility
cmctlper avviare CMAN-TDM.$ $ORACLE_HOME/bin/cmctl startup -c cman-testLa utility si connetterà e avvierà l'istanza CMAN. Vengono visualizzati lo stato dell'istanza e i dettagli. - Eseguire SQL*Plus utilizzando l'alias di connessione CMAN-TDM e l'utente applicazione
examplecreati in precedenza per connettersi ad Autonomous Database.$ sqlplus example@exampledb_high_cman_tdmLa query SQL visualizzerà l'utente proxy del database
TDMutilizzato da CMAN-TDM per connettersi a Oracle Autonomous Database. Questa query restituirà un valore vuoto quando ci connettiamo direttamente a Oracle Database.
Ora sei connesso tramite CMAN-TDM a un Oracle Autonomous Database.