从本地 SQL Server 数据库刷新数据

在本教程中,将了解如何从本地网络中存在的关系数据库中刷新 Power BI 数据集。 具体而言,本教程使用示例 SQL Server 数据库,Power BI 必须通过本地数据网关访问该数据库。

在本教程中,将完成以下步骤:

  • 创建和发布 Power BI Desktop .pbix 文件,它用于导入本地 SQL Server 数据库中的数据。
  • 通过数据网关在 Power BI for SQL Server 连接中配置数据源和数据集设置。
  • 配置刷新计划,确保 Power BI 数据集包含最新数据。
  • 执行数据集的按需刷新。
  • 查看刷新历史记录,分析过去刷新周期的结果。
  • 通过删除本教程中创建的项来清理资源。

先决条件

注意

如果你不是网关管理员,或者不想自己安装网关,请让组织中的网关管理员创建所需的数据源定义,以将数据集连接到 SQL Server 数据库。

创建并发布 Power BI Desktop 文件

按照以下过程创建使用 AdventureWorksDW2017 示例数据库的基本 Power BI 报表。 将报表发布至 Power BI 服务来获取 Power BI 数据集,你可在后续步骤中配置和刷新该数据集。

  1. 在 Power BI Desktop 的“主页”选项卡上,选择“获取数据”>“SQL Server”。

  2. 在“SQL Server 数据库”对话框中,输入“服务器”和“数据库(可选)”名称,确保“数据连接模式”设置为“导入”。

    注意

    如果计划使用存储过程,则数据连接模式必须是“导入”。

    Screenshot of the SQL Server database dialog box.

    (可选)在“高级选项”下,可指定 SQL 语句并设置其他选项,例如使用 SQL Server 故障转移

    Screenshot of SQL Server advanced options

  3. 选择“确定”

  4. 在下一个屏幕上,验证凭据,然后选择“连接”。

    注意

    如果身份验证失败,请确保已选择正确的身份验证方法并使用了具有数据库访问权限的帐户。 在测试环境中,可使用具有显式用户名和密码的数据库身份验证。 在生产环境中,通常使用 Windows 身份验证。 有关更多帮助,请参阅排查刷新方案问题,或者联系数据库管理员。

  5. 如果出现“加密支持”对话框,请选择“确定”

  6. 在“导航器”对话框中,选择“DimProduct”表,然后选择“加载”。

    Screenshot of the Navigator dialog box.

  7. 在 Power BI Desktop“报表”视图的“可视化效果”窗格中,选择“堆积柱形图”

    Screenshot of the Visualization pane with the Stacked column chart highlighted.

  8. 在报表画布中选择新的柱形图后,在“字段”窗格中选择“EnglishProductName”和“ListPrice”字段。

    Screenshot of the Fields pane with the EnglishProductName and ListPrice fields highlighted.

  9. 将 EndDate 从“字段”窗格拖到“此页上的筛选器”窗格,然后在“基本筛选”下,选中“(空白)”对应的复选框。

    Screenshot that shows Basic filtering for Filters on this page.

    此时,可视化效果应如下图所示:

    Screenshot that shows the finished column chart.

    请注意,Road-250 Red 产品与其他 Road-250 产品的标价相同。 在稍后更新数据和刷新报表时,此价格将出现变化。

  10. 使用名称“AdventureWorksProducts.pbix”保存报表。

  11. 在“主页”选项卡上,选择“发布” 。

  12. 在“发布到 Power BI”屏幕上,选择“我的工作区”,然后选中“选择”。 如有必要,请登录到 Power BI 服务。

  13. 出现“成功”消息时,选择[在 Power BI 中打开“AdventureWorksProducts.pbix”]。

    Screenshot of the Publish to Power BI screen.

将数据集连接到 SQL Server 数据库

在 Power BI Desktop 中,你已直接连接到本地 SQL Server 数据库。 在 Power BI 服务中,你需要数据网关充当云和本地网络之间的桥梁。 按照以下步骤将本地 SQL Server 数据库作为数据源添加到网关,然后将数据集连接到此数据源。

  1. 在 Power BI 服务中,在屏幕的右上角选择设置齿轮图标,然后选择“设置”。

    Screenshot that shows selecting Settings on the Power BI Home page.

  2. 选择“语义模型”选项卡,然后从语义模型列表中选择 AdventureWorksProducts 语义模型。

  3. 展开网关连接,并验证是否至少列出了一个网关。 如果没有看到网关,请确保按照说明安装本地数据网关

    Screenshot that shows the Gateway connection in Settings.

  4. 选择“操作”下的箭头切换来展开数据源,然后选择数据源旁边的“添加到网关”链接。

    Screenshot that shows the expanded data sources with the arrow toggle highlighted.

  5. 在选择了“本地”的“新建连接”屏幕上,填写或验证以下字段。 大多数字段已填充。

    • 网关群集名称:验证或输入网关群集名称。
    • 连接名称:输入新连接的名称,例如 AdventureWorksProducts。
    • 连接类型:选择“SQL Server”(如果尚未选择)。
    • 服务器:验证或输入你的 SQL Server 实例名称。 必须与在 Power BI Desktop 中指定的相同。
    • 数据库:验证或输入你的 SQL Server 数据库名称,例如 AdventureWorksDW2017。 必须与在 Power BI Desktop 中指定的相同。

    在“身份验证”下:

    • 身份验证方法:选择“Windows”、“基本”或“OAuth2”,通常为“Windows”。
    • 用户名和密码:输入用于连接到 SQL Server 的凭据。

    Screenshot that shows the New connection settings.

  6. 选择创建

  7. 返回“设置”屏幕,展开“网关连接”部分,并验证配置的数据网关现在是否显示“正在安装它的计算机上运行”状态。 选择“应用”。

    Screenshot that shows applying the gateway connection.

配置刷新计划

现在,你已通过数据网关将 Power BI 数据集连接到 SQL Server 本地数据库,接下来请按照以下步骤配置刷新计划。 按计划刷新数据集有助于确保报表和仪表板具有最新数据。

  1. 在左侧导航窗格中,展开“我的工作区”。

  2. 在“语义模型”部分,指向 AdventureWorksProducts 语义模型,选择“打开”菜单(三个垂直点图标),然后选择“计划刷新”。

    提示

    请确保指向 AdventureWorksProducts 数据集,而不是具有相同名称的报表,该报表没有“计划刷新”选项。

  3. 在“计划刷新”部分的“不断更新数据”下,将刷新设置为“开”

  4. 在“刷新频率”下,为此示例选择“每日”,然后在“ 时间”下选择“添加其他时间”。

    对于此示例,请指定“早上 6:00”,然后选择“添加另一个时间”并指定“下午 6:00”。

    Screenshot that shows configuring scheduled refresh.

    注意

    如果数据集位于共享容量上,则最多可配置 8 个每日时段;如果位于 Power BI Premium 上,则可配置 48 个时段。

  5. 保留“发送刷新失败通知至”下的复选框设置为“语义模型所有者”,然后选择“应用”。

你现已配置刷新计划,Power BI 会在下一计划时间(15 分钟内)刷新数据集。

执行按需刷新

若要随时刷新数据来执行网关和数据源配置测试等操作,可使用左侧窗格“语义模型”菜单中的“立即刷新”选项进行按需刷新。 按需刷新不会影响下一计划的刷新时间。

为了说明按需刷新,请先使用 SSMS 更改示例数据来更新 AdventureWorksDW2017 数据库中的 DimProduct 表,如下所示:


UPDATE [AdventureWorksDW2017].[dbo].[DimProduct]
SET ListPrice = 5000
WHERE EnglishProductName ='Road-250 Red, 58'

按照以下步骤操作,使更新后的数据可通过网关连接传输到数据集并进入 Power BI 报表:

  1. 在 Power BI 服务的左侧导航窗格中,选择“我的工作区”。

  2. 在“语义模型”部分,将鼠标悬停在 AdventureWorksProducts 语义模型上,选择“打开”菜单(三个垂直点图标),然后选择“立即刷新”。

    Screenshot that shows selecting Refresh now.

    右上角会显示“准备刷新”消息。

  3. 在“我的工作区”的“报表”部分中,选择“AdventureWorksProducts”。 查看更新后的数据如何传输到报表中,现标价最高的产品是“Road-250 Red, 58”。

    Screenshot that shows the updated column chart.

查看刷新历史记录

最好定期使用刷新历史记录来查看既往刷新周期的结果。 数据库凭据可能已过期,或者所选网关在计划刷新到期时可能已脱机。 按照以下步骤检查刷新历史记录并检查问题。

  1. 在 Power BI 屏幕的右上角,选择“设置”齿轮图标,然后选择“设置”。

  2. 在“语义模型”选项卡上,选择要检查的语义模型,例如 AdventureWorksProducts。

  3. 选择“刷新历史记录”链接。

    Screenshot that shows selecting the Refresh history link.

  4. 在“刷新历史记录”对话框的“计划”选项卡上,请注意过去的计划和按需刷新及其开始时间和结束时间。 如果状态为“已完成”,则表示 Power BI 已成功刷新。 对于失败的刷新,可看到错误消息并检查错误详细信息。

    Screenshot that shows the Refresh history screen.

    注意

    OneDrive 选项卡仅与连接到 OneDrive 或 SharePoint Online 上的 Power BI Desktop 文件、Excel 工作簿或 CSV 文件的数据集相关。 有关详细信息,请参阅 Power BI 中的数据刷新

清理资源

按照以下说明清理为本教程创建的资源:

  • 如果不想再使用示例数据,请使用 SSMS 删除数据库。
  • 如果你不想使用 SQL Server 数据源,请从数据网关中删除该数据源。 如果安装数据网关仅为完成本教程,还请考虑卸载它。
  • 还请删除在你发布 AdventureWorksProducts.pbix 文件时 Power BI 创建的 AdventureWorksProducts 数据集和报表。

本教程探讨了如何:

  • 将数据从本地 SQL Server 数据库导入 Power BI 数据集。
  • 按计划按需刷新 Power BI 数据集,来更新使用该数据集的报表和仪表板。

接下来,你可详细了解 Power BI 数据刷新,详细学习如何管理数据网关和数据源。