【问题标题】:What Protocol does Oracle client use when connecting PowerBI to oracle database?将 PowerBI 连接到 oracle 数据库时,Oracle 客户端使用什么协议?
【发布时间】:2019-06-21 07:54:13
【问题描述】:

我已经在我的服务器上安装了 Oracle 客户端并按照数据库托管商的说明配置了 TNS。 Powerbi 现在可以连接到 Oracle 数据源。

我想清楚 PowerBI 连接到 oracle 源的方法。 例如,我可以通过 ODBC 连接到 oracle,而无需使用 Oracle 客户端。

我想知道 oracle 客户端使用的是什么协议,以及使用它而不是 ODBC 有什么好处?

【问题讨论】:

    标签: oracle odbc powerbi


    【解决方案1】:

    看起来像Power BI recommends installing the ODAC runtime for your environment。没有其他选择。您可能会问为什么 Power BI 使用 Oracle ODP 驱动程序而不是 Oracle ODBC 驱动程序 - 我很确定答案是 it's faster and supports more Oracle features,因为它不必实现桥接。

    如果您对大容量的 Oracle 客户端或完整的 ODAC 开发人员下载感到沮丧,您也许可以只安装更小的 ODAC XCopy 运行时。 (32-bit, 64-bit)


    为了回答您关于协议的问题,据我所知,每个客户端都使用专有Oracle Net Services 网络堆栈的Oracle Net 组件将客户端连接到服务器。

    然后客户端通过网络连接发送命令。同样,据我所知,大多数客户使用低级别的OCI library 来执行此操作。

    在 OCI 之上构建了许多不同的客户端:

    • SQL*Plus
    • SQL*加载器
    • 数据泵
    • Oracle 即时客户端
    • Oracle 客户端(即“厚客户端”)
    • Oracle JDBC OCI 驱动程序
    • Oracle ODBC 驱动程序和other drivers for Microsoft products(ODP.NET 非托管、ASP.NET、OLE DB)

    有一些例外:

    • Oracle JDBC Thin 驱动程序(完全是 Java 代码)
    • Oracle ODP 托管驱动程序(完全 .NET 代码)

    还有一个Microsoft ODBC driver for Oracle,尽管微软明确表示要使用 Oracle 驱动程序。它不支持大多数现代 Oracle 数据特性(“Unicode 数据类型、BLOB、CLOB 等”)。

    【讨论】:

    • 非常有帮助,谢谢!我在刷新我的 powerBI 数据时间歇性地收到“通信通道进程 ID:12345 会话 ID:12 序列号:12345 上的 ORA-03113 文件结尾”的问题。大约有 50% 的时间发生。如果我设置 ODBC,我根本不会收到错误,所以虽然速度较慢,但​​它是可靠的。感谢您提供的信息。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-03
    • 1970-01-01
    • 2020-02-09
    • 1970-01-01
    • 2020-10-16
    相关资源
    最近更新 更多