Oracle
Recolección ORACLE y Entrega ORACLE_EXEC. El connect string lo arma el CMS a partir de los
campos de la conexión: el servidor donde corre el CMS no necesita tener un tnsnames.ora
instalado, y quien ya tiene ese archivo pega el descriptor directo en la conexión — ver
Descriptor TNS. Los campos de comando aceptan solo DML; para ejecutar PL/SQL
generado por el Transformador hay una plantilla fija — ver
procedures y SQL dinámico.
Conexión
| Campo | Para qué sirve |
|---|---|
| Identificación | Decide cómo se informa la dirección y, con eso, qué campos aparecen. SERVICE_NAME arma un connect string Easy Connect (host:puerto/servicio); SID arma el descriptor clásico (DESCRIPTION=(ADDRESS=...)(CONNECT_DATA=(SID=...))); Descriptor (TNS) usa el texto que usted pegue |
| Host / Puerto | Listener de Oracle. Predeterminado 1521. No aparecen en la identificación Descriptor (TNS) |
| Service Name / SID | Nombre del servicio o del SID, según la Identificación elegida. No aparece en la identificación Descriptor (TNS) |
| Descriptor TNS | Solo en la identificación Descriptor (TNS): el descriptor del alias, copiado del tnsnames.ora — ver Descriptor TNS |
| Usuario / Contraseña | Usuario de la base |
| TLS | Cambia el protocolo a TCPS (tcps://host:puerto/servicio). En la identificación Descriptor (TNS) no cambia la dirección — allí el protocolo lo define el PROTOCOL= de adentro del descriptor — y sirve solo para liberar los campos de Wallet |
| Ruta del Wallet / Contraseña del Wallet | Solo con TLS activado y cuando el servidor exige mTLS (ej.: Oracle Autonomous Database). Apunte al directorio del wallet (PEM o cwallet.sso). TLS contra una CA pública no necesita wallet |
| Query de Prueba (Keep Alive) | Misma función que en SQL Server. En blanco = SELECT 1 FROM DUAL |
El CMS arma el connect string a partir de estos campos — el servidor donde corre el CMS no
necesita tener un tnsnames.ora instalado ni la variable TNS_ADMIN configurada.
Descriptor TNS
Easy Connect resuelve el caso común, pero no expresa lo que muchos entornos de producción tienen
escrito en el tnsnames.ora: varios ADDRESS (RAC), LOAD_BALANCE/FAILOVER, RETRY_COUNT y el
bloque SECURITY del Autonomous Database. Para esos, elija la identificación Descriptor (TNS) y
pegue en el campo el descriptor del alias:
(DESCRIPTION=
(LOAD_BALANCE=on)
(ADDRESS=(PROTOCOL=TCP)(HOST=rac1.empresa.com)(PORT=1521))
(ADDRESS=(PROTOCOL=TCP)(HOST=rac2.empresa.com)(PORT=1521))
(CONNECT_DATA=(SERVICE_NAME=PROD))
)Puede pegar el fragmento entero del archivo, con el nombre del alias adelante
(PROD_HIGH = (DESCRIPTION=...): el CMS descarta el nombre solo. Los saltos de línea y la
indentación tampoco molestan.
Lo que no funciona es informar solo el nombre del alias (PROD_HIGH). El CMS no lee ningún
tnsnames.ora, así que no hay dónde buscar qué significa ese nombre — copie el descriptor al que
apunta. Un texto que no empieza con ( se rechaza al guardar, con esa explicación.
En la columna Dirección de la lista de conexiones aparece el primer host:puerto de adentro
del descriptor; si hay más de un ADDRESS, un (+N) señala los demás.
Autonomous Database
El wallet descargado de Oracle trae un tnsnames.ora con los alias _high, _medium y _low.
Pegue el descriptor del que vaya a usar, active TLS y apunte la Ruta del Wallet a la carpeta
del wallet descomprimido en el servidor del CMS.
Vocabulario bloqueado en este dialecto
Además del DDL/DCL vedado en todos los dialectos, este bloquea:
UTL_HTTP, UTL_TCP, UTL_SMTP, UTL_FILE, DBMS_SCHEDULER, DBMS_JOB, DBMS_SQL, EXECUTE IMMEDIATE
La verificación completa — verbo inicial, statements encadenados y la neutralización de comentarios y literales — está en lo que el CMS bloquea en los campos SQL.
El comportamiento común a las cuatro bases — modos de resultado, marcado de lo ya leído y marcadores — está en Bases de datos.