0
votes

TL:DR - do I need a data gateway when it's already in the AWS cloud, could I circumvent with MSSQL?

My scenario is I have a hosted and publicly accessible MySQL database on AWS. Using PowerBI desktop, I can happily connect in, do my reports and publish away. My problem comes down to it refreshing the dataset when published, from past experience this should be pretty easy but in PowerBI the 'Data Source' credentials and 'Scheduled Refresh' are greyed out along with the unhelpful message...

Scheduled refresh is disabled because at least one data source is missing credentials. To start the refresh again, go to this dataset's settings page and enter credentials for all data sources. Then reactivate scheduled refresh.

But I know the server is accessible publicly and the credentials were set in desktop version, but these do not seem to come across to PowerBI online / dashboard. After some research, this link appears to highlight that the MySQL data connector is limited, therefore, a gateway is required - which feels unnecessary. My questions are:

  • Is there a simple method of connecting a published PowerBI dataset into AWS, other than a Gateway?
  • If I was to install a MSSQL server for my reporting data within AWS and use that as my Dataset source, would that be a suitable alternative?

Thanks in advance

1

1 Answers

1
votes

You will need a data gateway for services on AWS, as they are classed as external sources. Data Gateways are not needed for Azure services as in most cases Power BI can connect to these sources if the option in those services allow connections from other Azure services like PBI. In your case, even if you installed MS SQL Server on AWS is it still classed as a externally hosted data source, if it was Azure SQL Server you would not need one. Also if it was MS SQL Server hosted on an Azure VM, it would need a Gateway connection.

You have the option of maybe, exporting the data to Azure Blob as CSV then using Power BI/Data flow to load it from there, or some method pushing the data to an Azure SQL DB set of tables then connecting it that way.