负载平衡节点上的不同 sqlldr 位置

负载平衡节点上的不同 sqlldr 位置

我们在运行第三方 WebSphere 应用程序的负载均衡器集群中有两个节点。

我们注意到两个节点的 ./sqlldr 位置不同。对于一个节点,其: /usr/app/oracle/product/11.2.0/client

另一方面,它是:
/usr/app/oracle/product/11.2.0/client_1

我相信这是导致我们的 WebSphere 应用程序出现问题的原因,该应用程序的配置文件中有一个用于设置 ./sqlldr 位置的路径。

您能告诉我如何最好地解决此错误,而无需采取重新安装产品等重大步骤吗?

创建符号链接可以解决问题吗?

答案1

您至少有两个选择:

  1. 符号链接(如您所建议的)使路径相同。例如:

    $ ln -s /usr/app/oracle/product/11.2.0/client /usr/app/oracle/product/11.2.0/client_1
    
  2. 在账户的配置文件中创建条件别名(假设配置文件必须相同)。在访问 sqlldr 之前读取的 .bash_profile 或其他配置文件中:

    如果 [`hostname` = “server_a”]; 然后
        别名 sqlldr ='/usr/app/oracle/product/11.2.0/client/bin/sqlldr'
    别的
        别名 sqlldr = '/usr/app/oracle/product/11.2.0/client_1/bin/sqlldr'
    

两者都应该可以工作,我会首先尝试符号链接选项,因为它可能更简单。

相关内容