【问题标题】:SSRS ODAC Client TNS_Admin ConfigurationSSRS ODAC 客户端 TNS_Admin 配置
【发布时间】:2020-05-22 00:34:09
【问题描述】:

在运行 SSRS 的服务器上安装 ODAC 客户端后,我想将我的 TNSNames/SQLNET.ora 配置文件移动到一个集中位置。我已将它们移至:

D:\apps\oracle_configs

我已经在每个可能的位置将 TNS_ADMIN 设置为该目录:

  1. 系统环境变量
  2. 注册表
  3. machine.config

但是,由于某种原因,SSRS 不会在所需位置找到 tnsnames.ora 文件。当尝试在 Web 报告管理器中测试与 Oracle 数据源的连接时,它总是会失败并出现错误:

ORA-12154: TNS: 无法解析指定的连接标识符

如果我将文件复制回 %ORACLE_HOME%\network\admin 目录并重新启动 SSRS 服务,则测试连接成功。

我错过了什么?如何告诉 SSRS 在自定义位置而不是默认的 Oracle Home 目录中查找 TNS 文件?

【问题讨论】:

    标签: reporting-services datasource tnsnames odac oracleclient


    【解决方案1】:

    听起来您可能需要使用 regsvr32 将驱动程序注册到新路径。

    1. 同样的测试连接,我们现在将在 SSRS 中进行。为此,我们需要注册 OraOLEDB 驱动程序。转到命令提示符(以管理员身份运行)->,然后运行以下命令。路径可能因您的安装目录而异。我们需要注册 64 位驱动,因为 SSRS 在 64 位上运行 (E:\app\client\xxxx\product\12.2.0\client_2\bin\OraOLEDB12.dll)

    MSDN: Configure Oracle data source

    【讨论】:

    • 嗯..我想知道...所以,我实际上已经手动注册了该 dll 文件作为早期故障排除步骤。当时,它似乎没有改变任何东西.. 但现在你提到它,你让我想知道......
    • @FernandoVega - 希望它有所帮助 - 这是我唯一能想到的,尽管我已经有 5 年多没有使用 Oracle 数据库了。
    • 不,同样的错误。谢谢你的想法。事后,我确实更新了 regsitry、sys env var 和 machine.config 中的 TNS_ADMIN 值。因此,再次尝试注册绝对值得一试。我只是不明白...此服务器上的其他应用程序似乎在此配置下工作得很好,只是 SSRS 不喜欢它。我只去了 machine.config 来更改 TNS_Admin 值......唯一会取代应用程序、配置或 web.config 的东西......但如果我没记错的话,SSRS 不喜欢人们去触摸它她的 web.config。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-01-22
    • 2011-05-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-17
    相关资源
    最近更新 更多