Ir al contenido

Cheatsheet de Oracle TNS

Por

Madurezreviewed
Última revisión
Publicado
Última actualización

Revisa el workflow y automatización.

Pregunta Comando Señal
listener nmap -sV -p 1521 --script oracle-tns-version TARGET_IP versión TNS
resolución tnsping '//FQDN:1521/SERVICE_NAME' descriptor y tiempo
sesión sqlplus 'USERNAME@//FQDN:1521/SERVICE_NAME' prompt SQL
ODAT odat all -s TARGET_IP -p 1521 mapa preliminar que requiere confirmación

Define SQLNET.OUTBOUND_CONNECT_TIMEOUT=5 en un sqlnet.ora dedicado y apunta TNS_ADMIN a su directorio. Así se limita la conexión Oracle Net sin cambiar la configuración global. -L evita un bucle de reprompt y -S reduce el ruido:

Ventana de terminal
TNS_ADMIN=TNS_CONFIG_DIR \
sqlplus -L -S 'USERNAME@//FQDN:1521/SERVICE_NAME' @collect-context.sql

El archivo SQL debe activar WHENEVER SQLERROR EXIT SQL.SQLCODE, SET MARKUP CSV ON y SPOOL, tal como explica la automatización de Oracle. La contraseña se solicita fuera de la línea de comandos. Un timeout de Oracle Net no distingue ruta, listener y servicio.

Contexto y permisos
SELECT * FROM v$version;
SELECT SYS_CONTEXT('USERENV','SESSION_USER') FROM dual;
SELECT SYS_CONTEXT('USERENV','SERVICE_NAME') FROM dual;
SELECT SYS_CONTEXT('USERENV','CON_NAME') FROM dual;
SELECT * FROM session_roles;
SELECT * FROM session_privs;
SELECT directory_name, directory_path FROM all_directories;

Las vistas disponibles dependen de privilegios. Un error no demuestra ausencia del objeto subyacente.