我正在尝试使用 ksh 脚本连接到 Oracle 数据库。当我直接从提示符运行它时,它可以工作。但是当我把它放在一个脚本(abc.sh)中时它失败了。以下是我在脚本中添加的内容(经过编辑使其更短):
这里 abc 是用户名,而 abc$123 是可以访问数据库 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
如果直接键入,则此方法有效,但以 ./abc.sh 运行,会出现错误 -
ERROR ORA-01017: invalid username/password; logon denied
我确定我错过了一些简单的东西,但无法弄清楚。谢谢你的帮助。