你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

将 AdventureWorks 示例数据库导入到已启用 Azure Arc 的 PostgreSQL 服务器

AdventureWorks 是一个示例数据库,其中包含教程和示例中使用的 OLTP 数据库。 它由 Microsoft 提供并维护,是 SQL Server 示例 GitHub 存储库的一部分。

开源项目已转换 AdventureWorks 数据库,使其与已启用 Azure Arc 的 PostgreSQL 服务器兼容。

本文档介绍将 AdventureWorks 示例数据库导入到已启用 Azure Arc 的 PostgreSQL 服务器的简单过程。

注意

作为预览版功能,本文中介绍的技术受制于 Microsoft Azure 预览版补充使用条款

发行说明中提供了最近的更新。

下载 AdventureWorks 备份文件

将 AdventureWorks .sql 文件下载到 PostgreSQL 服务器容器。 在此示例中,我们将使用 kubectl exec 命令远程执行 PostgreSQL 服务器容器中的命令,将文件下载到容器中。 可以使用 curl 从可以访问的任何位置下载此文件。 如果有希望在 PostgreSQL 服务器容器中拉取的其他数据库备份文件,可以使用相同的方法。 在 PostgreSQL 服务器容器中时,可以轻松创建数据库、架构并填充数据。

运行类似于下面的命令来下载文件,并在运行之前替换 pod 名称和命名空间名称的值:

注意

容器需要通过 443 的 Internet 连接才能从 GitHub 下载文件。

注意

使用 PostgreSQL 服务器的协调器节点的 pod 名称。 其名称为 <服务器组名称>c-0(例如 postgres01c-0,其中 c 表示协调器节点)。 如果你不确定 pod 名称,请运行命令 kubectl get pod

kubectl exec <PostgreSQL pod name> -n <namespace name> -c postgres  -- /bin/bash -c "cd /tmp && curl -k -O https://raw.githubusercontent.com/microsoft/azure_arc/main/azure_arc_data_jumpstart/cluster_api/capi_azure/arm_template/artifacts/AdventureWorks2019.sql"

#Example:
#kubectl exec postgres02-0 -n arc -c postgres -- /bin/bash -c "cd /tmp && curl -k -O hthttps://raw.githubusercontent.com/microsoft/azure_arc/main/azure_arc_data_jumpstart/cluster_api/capi_azure/arm_template/artifacts/AdventureWorks2019.sql"

导入 AdventureWorks 数据库

同样,你可以运行 kubectl exec 命令来使用 PostgreSQL 服务器容器中包含的 psql CLI 工具来创建和加载数据库。

运行类似于下面的命令,创建空数据库,首先替换 pod 名称和命名空间名称的值,然后再运行它。

kubectl exec <PostgreSQL pod name> -n <namespace name> -c postgres -- psql --username postgres -c 'CREATE DATABASE "adventureworks";'

#Example
#kubectl exec postgres02-0 -n arc -c postgres -- psql --username postgres -c 'CREATE DATABASE "adventureworks";'

然后运行类似于下面的命令,导入数据库,替换 pod 名称和命名空间名称的值,然后再运行它。

kubectl exec <PostgreSQL pod name> -n <namespace name> -c postgres -- psql --username postgres -d adventureworks -f /tmp/AdventureWorks.sql

#Example
#kubectl exec postgres02-0 -n arc -c postgres -- psql --username postgres -d adventureworks -f /tmp/AdventureWorks.sql

建议执行的后续步骤

  • 阅读 Azure Database for PostgreSQL 的概念和操作方法指南,以将数据分布到多个 PostgreSQL 服务器节点并利用 Azure Database for PostgreSQL 的所有功能。 :

    * 在上面的文档中,跳过“登录到Azure 门户”部分,然后创建 Azure Database for PostgreSQL 在 Azure Arc 部署中执行剩余步骤。 这些部分特定于在 Azure 云中作为 PaaS 服务提供的 Azure Database for PostgreSQL 服务器,但文档的其他部分直接适用于已启用 Azure Arc 的 PostgreSQL 服务器。