我有一个要求,我需要执行一个长期运行的sql脚本,在Linux和Windows平台上的后台执行test.sql。
但是,如果我执行test.sql之类的 -
nohup sqlplus apps/<apps_pwd> @ test.sql &
然后输出ps -eaf命令泄漏应用程序密码,我们在命令行上传递。在Unix上,我可以想到命名管道将密码传递给后台运行进程 -
cat pipe | nohup sqlplus apps @ test.sql &
但是在Windows上,没有直接的方法来实现命名管道。
那么,有没有其他方法将oracle密码传递给后台运行sqlplus进程?所以ps -eaf不应泄漏控制台上的密码。
提前感谢您的帮助。
答案 0 :(得分:1)
使用Oracle Wallet存储密码。见tutorial.
答案 1 :(得分:-2)
echo ${PSWD} | sqlplus -s ${USERNAME}@SID @test.sql