Oracle 静默模式提示输入密码?

Oracle 静默模式提示输入密码?,oracle,sqlplus,Oracle,Sqlplus,我有两台IBMAIX服务器。一个是安装Oracle Client 10.2.0.4,另一个是安装Oracle Client 10.2.0.5。在SQLPLUS静默模式下,根据oracle文档,不会调用用户名和密码提示,也不会调用其他提示。但在Oracle10.2.0.5中,“输入密码:”提示即将出现,这会导致我的shell脚本出现一些问题。下面是两台服务器的日志。我刚刚使用/NOLOG连接到sqlplus并连接到schema@DB并输入密码,然后从dual中选择1 在带有Oracle客户端10.

我有两台IBMAIX服务器。一个是安装Oracle Client 10.2.0.4,另一个是安装Oracle Client 10.2.0.5。在SQLPLUS静默模式下,根据oracle文档,不会调用用户名和密码提示,也不会调用其他提示。但在Oracle10.2.0.5中,“输入密码:”提示即将出现,这会导致我的shell脚本出现一些问题。下面是两台服务器的日志。我刚刚使用/NOLOG连接到sqlplus并连接到schema@DB并输入密码,然后从dual中选择1

在带有Oracle客户端10.2.0.4的IBM AIX 5.3中(运行良好):

在带有Oracle客户端10.2.0.5的IBM AIX 6.1中(这无法正常工作):


显然,可以看到“输入密码:”以静默模式显示。我是否需要在Oracle客户端10.2.0.5中配置一些东西来修复此问题。

这是针对10.2.0.5报告的bug 12577165;并标记为10413991的副本。(对于11.2.0.1和11.2.0.2中的相同行为,还有一个单独的bug 9693295,对于相同内部bug 10413991的补丁在11.2.0.3补丁包中)

Linux和Solaris上似乎有10.2.0.5的补丁,但AIX上没有;你需要一份扩展的支持合同(至少)来获得补丁。您应该向Oracle提出服务请求,以确认错误,并查看是否有可用的修补程序

或者,您可以在不干扰或不需要升级当前客户端版本的情况下使用来解决此问题


但是,您不能在现有的客户端中配置它。

您确定客户端是10.2.0.5,而不是服务器;你没有使用11g客户端吗?这看起来像bug 9693295,但只提到11gR2(参见MOS文档ID 1101753.1)。如果是,您可以为脚本修补或使用更高版本的即时客户端吗?如果在非交互式脚本中执行连接,则可以将密码作为连接的一部分提供,但仍不能显示密码,但不能确定脚本正在执行的操作。$>sqlplus架构_name@DBNameSQL*Plus:10.2.0.5.0版-于2014年9月16日星期二02:39:33制作版权所有(c)1982年,2010年,Oracle。版权所有。输入密码:已连接到:Oracle Database 11g Enterprise Edition 11.2.0.3.0-64位生产SQL>OK;看起来像个bug,也许你可以在MOS上找到10g版本(和补丁)。或者使用11.2.0.3或更高版本的客户端。在我们的应用程序代码库中,我们连接到数据库,单独提供密码并检索数据。随着“输入密码:”提示的到来,在我们从数据库获取的数据中,“输入密码:”也在到来,我们得到了错误的输出。我们可以为密码提供模式和数据库名,这将阻止“enterpassword:”提示,但这将意味着我们试图避免的巨大代码更改。我认为密码和用户提示不应该以静默模式出现。我们能解决这个问题吗。您能否建议10.2.0.5版本的修补程序来解决此问题。您需要搜索我的Oracle支持,或提出服务请求以查找10.2.0.5的修补程序(如果有的话)。我会考虑使用当前的,如果需要的话,用你的应用程序分发。(我相信AIX5版本也适用于6.1)。
$> sqlplus -s /NOLOG
connect schema_name@DBName

select 1 from dual;

1
-------
1

exit
$>
$> sqlplus -s /NOLOG
connect schema_name@DBName
Enter password:
select 1 from dual;

1
-------
1

exit
$>