Estoy tratando de conectar a Oracle db utilizando un ksh secuencia de comandos. Cuando ejecuto directamente desde el símbolo del sistema, funciona. Pero cuando me lo puse dentro de un script (abc.sh) se produce un error. A continuación es lo que he puesto en el script (editado para hacer que sea más corto):
Aquí abc es el nombre de usuario, mientras que abc$123 es la contraseña de el usuario que tiene acceso a la base de datos de DBNAME.
#!/usr/bin/ksh
sqlplus -s /nolog << EOF > output
connect abc/abc$123@DBNAME;
set echo off
set heading off
select table_name from dba_tables;
exit;
EOF
Esto funciona si se escribiera directamente, sino que ejecutar como ./abc.sh, da error –
ERROR ORA-01017: invalid username/password; logon denied
Estoy seguro de que me estoy perdiendo algo simple, pero no puede entender esto. Gracias por tu ayuda.
Usted no puede simplemente escribir un código como este y esperamos que sea aprobado para el programa pertinente. SQL líneas están siendo ejecutados por KSH en lugar de SQL server. En su lugar usted necesita para hacer algo más a lo largo de las líneas de: