Microsoft Fabric Community Conference 2025, March 31 - April 2, Las Vegas, Nevada. Use code FABINSIDER for a $400 discount.
Register nowThe Power BI DataViz World Championships are on! With four chances to enter, you could win a spot in the LIVE Grand Finale in Las Vegas. Show off your skills.
I'm having trouble adding an Oracle database as a data source in the enterprise gateway. The error message I get is below:
Unable to connect: We encountered an error while trying to connect to SERVER_NAME. Details: "Cannot connect to the mashup data source. See error details for more information."Hide details
Activity ID: | 03e50d90-a4ee-4a5a-96c5-7dfe93a5ef4f |
Request ID: | 522f1644-0873-dd0c-719c-9d06e3972ddf |
Cluster URI: | https://wabi-us-north-central-redirect.analysis.windows.net |
Status code: | 400 |
Error Code: | DM_GWPipeline_Gateway_MashupDataAccessError |
Time: | Wed May 04 2016 14:48:55 GMT-0400 (Eastern Daylight Time) |
Version: | 13.0.1100.480 |
Underlying error code: | -2147467259 |
Underlying error message: | The provider being used is deprecated: 'System.Data.OracleClient requires Oracle client software version 8.1.7 or greater.'. Please visit https://go.microsoft.com/fwlink/p/?LinkID=272376 to install the offical provider. |
DM_ErrorDetailNameCode_UnderlyingHResult: | -2147467259 |
Microsoft.Data.Mashup.ValueError.Reason: | DataSource.Error |
I can confirm that I have the latest ODAC components installed on both the client machine and the server where the enterprise gateway is installed. I have also tested connecting to the data source through Power BI Desktop and it works just fine.
Any ideas? Thanks.
Solved! Go to Solution.
Hi @dimazaid, I managed to solve this by using the Oracle service name found in tnsnames.ora instead of using the full hostname.
So instead of putting "HOSTNAME" in the "Server" field, all I had to do was put in the service name. For reference, the syntax of a tnsnames.ora entry is:
SERVICENAME =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TYPE)(HOST = HOSTNAME)(PORT = PORTNUM))
(CONNECT_DATA =
(SERVICE_NAME = SERVICENAME)
)
)
Thanks, I forgot to mark this one as solved!
hi @wonga,
Could you try using your own account to use the Gateway? and refresh again.
If that works, you should reinstall the oracle components in a way that ensures the service account for the Gateway has access to them.
Hi @dimazaid, I managed to solve this by using the Oracle service name found in tnsnames.ora instead of using the full hostname.
So instead of putting "HOSTNAME" in the "Server" field, all I had to do was put in the service name. For reference, the syntax of a tnsnames.ora entry is:
SERVICENAME =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TYPE)(HOST = HOSTNAME)(PORT = PORTNUM))
(CONNECT_DATA =
(SERVICE_NAME = SERVICENAME)
)
)
Thanks, I forgot to mark this one as solved!
March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!
Check out the February 2025 Power BI update to learn about new features.
If you love stickers, then you will definitely want to check out our Community Sticker Challenge!