【发布时间】:2014-07-18 10:51:14
【问题描述】:
我有一个包含 oracle db 用户名和密码的 db.txt
oracle_user=username
oracle_password=password
然后我有一个 shell 脚本 mytest.sh 来调用 db.txt 中的用户名和密码。存入变量并通过sqlplus运行test.sql文件
#!/bin/sh
. db.txt
SCRIPT_HOME=/myhome/mytest
ORACLE_BASE=/opt/oracle
ORACLE_HOME=/opt/oracle/product/11.2.0/dbhome
ORACLE_SID=mysid
ORACLE_USER=$oracle_user
ORACLE_PASSWORD=$oracle_password
export ORACLE_BASE ORACLE_HOME ORACLE_SID ORACLE_USER ORACLE_PASSWORD;
SQL=$SCRIPT_HOME/test.sql
$ORACLE_HOME/bin/sqlplus $ORACLE_USER/$ORACLE_PASSWORD@$ORACLE_SID @$SQL
但是当我运行 mytest.sh 时,它会返回
错误:
ORA-01017: 无效的用户名/密码;登录被拒绝
从文本文件中读取的变量是否不能直接放入sqlplus命令中?
【问题讨论】: