我正在尝试使用Power BI连接Oracle 12c数据源,我已经寻找了多种解决方案,并按照Microsoft文档中的说明进行操作
但是我认为工作中缺少一些东西。
我要在同一台笔记本电脑上安装新的Oracle和powerbi,服务器应按照文档中所述使用“ ServerName / SID”格式,因此我的将是:
localhost / testdb
我刚刚在笔记本电脑上安装了Oracle 12c 64位来测试连接
我也在使用Power Bi 64位 我也在Windows 10 64位上
我还从Oracle网站安装了“ 64位Oracle数据访问组件(ODAC)”: http://www.oracle.com/technetwork/database/windows/downloads/index-090165.html
使用“ OraDB12Home1”和“ OraClient12Home2”将数据库添加到DSN的位置
我还清除了电源bi上的所有数据源连接,因为有时它只显示错误,而没有将我发送到下一个屏幕以输入用户名和密码
这些是tnsnames.ora的详细信息:
# tnsnames.ora Network Configuration File:
C:\app\Ahmadssb\virtual\product\12.2.0\dbhome_1\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.
LISTENER_TESTDB =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
ORACLR_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
(CONNECT_DATA =
(SID = CLRExtProc)
(PRESENTATION = RO)
)
)
LISTENER_ORCL =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
TESTDB =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = testdb)
)
)
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl.babader.com)
)
)
我不知道我还缺少什么,我什至从oracle中将数据导出为转储文件并将其转换为sql,但似乎电源上现在不支持此操作,这是另一种情况。
我需要将数据库数据保存到PowerBi中,这些数据是什么,我是否丢失了,应该怎么做才能使其成功连接?
根据注释的建议,将 localhost / testdb 更改为仅 testdb (也在大写字母 TESTDB 中进行了测试),因为应该在服务器上键入。但这对我也不起作用,并且仍然出现相同的错误,请检查以下图片:
似乎与oracle的连接无法正常工作,我需要在oracle中做些什么才能使其正常工作?
答案 0 :(得分:1)
通过从Microsoft Store卸载PowerBI并从https://powerbi.microsoft.com/en-us/desktop/上的高级下载选项下载msi文件,终于使PowerBI能够与Oracle驱动程序一起使用。我怀疑商店应用程序的某些安全限制阻止了使用Oracle库。
答案 1 :(得分:0)
它采用与SQL Plus相同的连接体系结构,因此在成功的SQL Plus测试中,Power BI中的Server字段应包含@符号之后的任何内容。
因此,从Power BI建立Oracle连接时,而不是 localhost / testdb ,我会在“服务器”字段中尝试 TESTDB 。如果可以,我认为您可以忽略ODBC。
答案 2 :(得分:0)
我已经格式化了Windows,从头开始重新安装所有内容并通过ODBC进行了连接,并且可以正常工作(但是我得到了正常错误 DataSource.Error:ODBC:ERROR [07006] [Oracle] [ODBC]受限的数据类型属性冲突)
但通过对每个所需表的选择查询,我都能正常工作
正常安装
从开始菜单-> Windows管理工具> ODBC数据源(64位)
在用户DSN中,点按以下图片:
由于连接成功,请单击“确定”进行保存
接着在Power BI上选择获取源:
如果您没有键入选择查询并单击“确定” 然后您添加了用户名和密码
https://community.powerbi.com/t5/Integrations-with-Files-and/ODBC-Connection-error-07006/td-p/278165
这就是我最终要如何连接的方式,但仍然有与该主题无关的小问题,我将其放在另一个问题上, 但希望这个答案可以帮助其他人建立联系
答案 3 :(得分:0)
我还体验到Connect via Oracle Database description by MS无法正常工作。但是,我可以通过以下格式输入凭据,而不使用ODBC通过“ Oracle数据库”选项(即Get Data > Oracle Database > Server
)建立连接:
[HOSTNAME]:[PORT]/[SERVICE_NAME]
例如:
localhost:1521/myservice.com