Configurar y conectarse a Oracle Autonomous Database
Obtenga los archivos de configuración de Oracle Autonomous Database e instálelos en la máquina en la que está instalado CMAN-TDM.
Configuración de los archivos de cartera de Oracle Autonomous Database mediante el protocolo TLS mutuo
- Conéctese a la consola de Oracle Cloud Infrastructure y navegue a la región en la que reside la base de datos autónoma.
- Vaya a la página Autonomous Database y, a continuación, haga clic en el separador Conexión de base de datos.Se muestra Detalles de Autonomous Database.
- Haga clic en Descargar cartera.Se le pedirá una contraseña para la cartera.
- Proporcione una contraseña y, a continuación, descargue el archivo ZIP de cartera en la máquina local. Transfiera el archivo ZIP descargado a su máquina Linux con su método o aplicación de transferencia de archivos SSH preferidos. Es importante guardar (o recordar) la contraseña de la cartera. Debe utilizar la contraseña más adelante en esta solución.Vaya al siguiente paso después de que el archivo ZIP de la cartera esté en la máquina Linux.
- Extraiga el contenido en el directorio
$TNS_ADMIN.Note:
Esta ubicación puede ser la ruta$ORACLE_HOME/network/adminpredeterminada de la instalación de la máquina CMAN-TDM.La cartera no contiene las credenciales de nombre de usuario y contraseña de la base de datos, pero debe mantener la cartera y los archivos en una ubicación segura para su uso posterior.
A continuación, se muestra un ejemplo de los archivos extraídos:
-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.jksLos archivos principales necesarios para el caso de uso actual son
cwallet.sso,ewallet.p12,sqlnet.oraytnsnames.ora. Los demás archivos sólo son necesarios si el usuario tiene previsto conectarse a través de una aplicación JDBC. - Edite el archivo
sqlnet.oray cambie la ubicación de cartera DIRECTORY al directorio que contiene el archivocwallet.sso:WALLET_LOCATION = (SOURCE = (METHOD = file) (METHOD_DATA = (DIRECTORY="/u01/app/oracle/network/admin"))) SSL_SERVER_DN_MATCH=yesAhora que la cartera está definida, puede conectarse a la base de datos mediante una de las cadenas de conexión "nombre de servicio de red" de
tnsnames.ora(por ejemplo,exampledb_high). - Abra el archivo
tnsnames.oray almacene los detalles de conexión de la base de datos autónoma en otro archivo, como$HOME/dbdetails.txt:Utilizará los parámetros de dirección, seguridad y nombre de servicio de la base de datos autónoma al configurar CMAN-TDM. - (Opcional) Compruebe la conexión a la base de datos mediante SQL*Plus.
-
Si SQL*Plus está en la misma máquina que CMAN-TDM, puede ver el archivo
tnsnames.oradesde el directorio de cartera$TNS_ADMIN. -
Si SQL*Plus está instalado en una máquina diferente a la CMAN-TDM, copie los archivos de cartera de Autonomous Database en el directorio
$TNS_ADMINde la máquina en la que está instalado SQL*Plus. A continuación, copie los detalles de la base de datos de la sección anterior en el archivo$TNS_ADMIN/tnsnames.orade la misma máquina.
El archivo
$TNS_ADMIN/tnsnames.oracontiene varios nombres de servicio de red (a la izquierda de los signos "="). Puede utilizar cualquiera, según el nivel de rendimiento y la simultaneidad de servicio que desee de la base de datos.Ejecute SQL*Plus como usuario
ADMINe introduzca la contraseña de ese usuario definida durante la creación de la base de datos:$ sqlplus -l admin@adb-name_highCuando tenga éxito, se conectará a la base de datos. -
Configuración de CMAN para conectarse a Oracle Autonomous Database
cman.ora) con todas las especificaciones del directorio $TNS_ADMIN del equipo CMAN-TDM. El directorio se encuentra a menudo en ORACLE_HOME/network/admin.
El archivo cman.ora es el archivo de configuración principal que lee CMAN-TDM. Contiene todos los detalles de configuración para activar Traffic Director y CMAN para conectarse con Oracle Autonomous Database.
- Conéctese como usuario
oracle. - Navegue hasta el directorio
$TNS_ADMINy cree el archivocman.ora.$ cd $TNS_ADMIN $ vi cman.ora - Configure el archivo
cman.ora.En este ejemplo, el nombre de instancia de CMAN-TDM escman-test. La aplicación cliente se conecta al proceso de CMAN mediante el protocolo TCP y CMAN se conecta a Oracle Autonomous Database mediante el protocolo TCPS.El parámetro de dirección contiene el nombre de host y el protocolo del servidor CMAN-TDM. El siguiente ejemplo de archivo
cman.orautiliza TCP y el número de puerto 1523. Puede elegir cualquier número de puerto disponible en su máquina Linux.Configure los siguientes parámetros:
tdm=true: importante Debe definir el parámetrotdmen true para activar el modo de director de tráfico.tdm_threading_mode=dedicated: en este ejemplo, se ejecuta CMAN-TDM en modo dedicado, que es el modo predeterminado para el modo de director de tráfico. Puede ejecutar el modo de director de tráfico en modo compartido.log_level: se define para activar el nivel necesario de registro para fines de prueba y depuración.max_connections: defina según sus requisitos de rendimiento.idle_timeout=0registration_invited_nodes= *inbound_connect_timeout=0session_timeout=0outbound_connect_timeout=0max_gateway_processes: defina según sus requisitos de rendimiento.min_gateway_processes: defina según sus requisitos de rendimiento.trace_level: se define para activar el nivel necesario de rastreo para fines de prueba y depuración.max_cmctl_sessions: defina según sus requisitos de rendimiento.event_group:init_and_term,memory_opsnext_hop: el parámetro apunta a los detalles de dirección de Oracle Autonomous Database junto con los detalles de SSL. Estos detalles se toman del archivodbdetails.txt, que ha creado en la sección anterior.WALLET_LOCATION: el parámetro apunta a la ubicación de la cartera de usuario de la aplicación Traffic Director Mode, que creará más adelante en esta sección.SQLNET.WALLET_OVERRIDE= VERDADERO
A continuación, se muestra un archivocman.orade ejemplo: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 - Cree un usuario proxy de base de datos (
tdm) para obtener todos los permisos necesarios para activar el modo de director de tráfico (TDM).- Conéctese a Oracle Autonomous Database mediante SQL*Plus como usuario
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 - Crear un usuario proxy de base de datos. En este ejemplo, se utiliza
tdmcomo usuario proxy de base de datos.SQL> create user tdm identified by {password} -- replace {password} with your actual password User created. SQL> grant create session to tdm; Grant succeeded. - Salga de SQL*Plus.
- Conéctese a Oracle Autonomous Database mediante SQL*Plus como usuario
- Cree la cartera de usuario de proxy de base de datos.
Agregue las credenciales de usuario de TDM a la cartera de Autonomous Database existente.
- Vaya al directorio
$TNS_ADMINdonde se encuentra la cartera de Autonomous Database.El directorio suele ser$ORACLE_HOME/network/admin.$ cd $TNS_ADMIN - Agregue los detalles de usuario
tdma la cartera de Autonomous Database mediante la utilidadmkstorepresente en el directorio$ORACLE_HOME/bin.Note:
- Para el parámetro service_name, introduzca el nombre de servicio que se encuentra en el archivo
dbdetails.txtque ha creado anteriormente. - Para los parámetros username y password, introduzca las credenciales de usuario
tdm. Repita este paso si desea que otros servicios (comoexampledb_low) estén disponibles a través detdm.
Utilice la siguiente sintaxis:
$ORACLE_HOME/bin/mkstore -wrl . -createCredential service_name username password. Por ejemplo:$ $ORACLE_HOME/bin/mkstore -wrl . -createCredential g5cadf7d7e4c6c8_exampledb_high.adb.oraclecloud.com tdm {password} - Para el parámetro service_name, introduzca el nombre de servicio que se encuentra en el archivo
- Verifique que la cartera se ha creado correctamente mediante la utilidad
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=USLa salida debe contener entradas del almacén secreto de Oracle, lo que indica que las credenciales de usuario
tdmestán almacenadas y son certificados de confianza y certificados de usuario (certificados SSL de Autonomous Database). - Verifique que las credenciales de usuario
tdmestán en la cartera mediante la utilidadmkstore. Cuando se le solicite la contraseña de cartera, introduzca la contraseña de cartera de Autonomous Database que ha creado al descargar el archivo zip de cartera de la consola de 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
- Vaya al directorio
- Conéctese mediante un usuario de aplicación CMAN-TDM en Oracle Autonomous Database.Tendrá que crear un usuario de base de datos 'normal' para el acceso general a la aplicación en lugar del usuario con privilegios
ADMINpara conectarse a Oracle Autonomous Database a través de CMAN-TDM mediante los permisos de usuario proxy de base de datos (tdm).Note:
Si ya tiene uno o más usuarios de aplicación existentes en Autonomous Database, omita este paso.- Cree un usuario de base de datos.
Puede copiar y personalizar el siguiente script
createuser.sqlpara crear el usuario.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 - Inicie SQL*Plus como usuario
ADMIN:$ sqlplus -l admin@exampledb_high - Ejecuta el script
createuser.sql.Transfiera el nombre del usuario como argumento de script. En este ejemplo se utiliza
example.El script le solicitará que defina la contraseña para este nuevo usuario. La contraseña debe cumplir las directrices de contraseña de usuario de Oracle Autonomous Database. No podrá crear un usuario si no cumple con las directrices.
SQL> @createuser.sql exampleEl nuevo usuario se crea tan pronto como se introduce la nueva contraseña.
- Cree un usuario de base de datos.
- Agregue los privilegios
tdmdel usuario de proxy de base de datos a todos los usuarios de la aplicación que necesiten acceso a la instancia de Autonomous Database mediante CMAN-TDM y, a continuación, salga de SQL*Plus.SQL> alter user example grant connect through tdm; User altered. SQL> exit - Verifique que la conexión se realiza correctamente para el nuevo usuario (se le solicitará que introduzca la contraseña):
$ sqlplus -l example@exampledb_high [ . . .] SQL> show user USER is "example" SQL> quit
Este usuario se utilizará para conectarse a Oracle Autonomous Database a través de CMAN-TDM.
Conexión a Oracle Autonomous Database a través de CMAN
$TNS_ADMIN/tnsnames.ora en la máquina que ejecuta la aplicación cliente para agregar la conexión.- Abra el puerto de CMAN-TDM (1523 en este caso) primero como usuario
rooten la máquina virtual de Linux de CMAN-TDM si la máquina virtual está detrás de un firewall.$ sudo su root $ firewall-cmd --permanent --add-port=1523/tcp $ firewall-cmd --reload - Puede ver el archivo
$TNS_ADMIN/tnsnames.orade la máquina en la que se encuentra la aplicación cliente para confirmar los parámetros de dirección. Puede agregar el alias de conexión CMAN-TDM en el archivo.En este ejemplo, la aplicación cliente SQL*Plus está en el mismo equipo que la CMAN-TDM.
El parámetro de dirección incluye la dirección CMAN-TDM. El parámetro
connect_datadebe contener el parámetroservice_namepara 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))) - Ejecute la utilidad
cmctlpara iniciar CMAN-TDM.$ $ORACLE_HOME/bin/cmctl startup -c cman-testLa utilidad se conectará e iniciará la instancia de CMAN. Se muestran el estado de la instancia y los detalles. - Ejecute SQL*Plus mediante el alias de conexión de CMAN-TDM y el usuario de aplicación
examplecreados anteriormente para conectarse a Autonomous Database.$ sqlplus example@exampledb_high_cman_tdmLa consulta SQL mostrará el usuario de proxy de base de datos
TDMque utiliza CMAN-TDM para conectarse a Oracle Autonomous Database. Esta consulta devolverá un valor en blanco cuando nos conectemos directamente a Oracle Database.
Ahora está conectado mediante CMAN-TDM a una instancia de Oracle Autonomous Database.