迁移服务的已知问题和限制

适用于: Azure Database for PostgreSQL 灵活型服务器

本文介绍了与 Azure Database for PostgreSQL 中的迁移服务相关的已知问题和限制。

常见限制

以下列表介绍了适用于迁移方案的常见限制:

  • 只能对灵活服务器执行一次活动迁移或验证。

  • 当源是 Azure Database for PostgreSQL 单一服务器时,迁移服务仅支持用户和角色迁移。

  • 迁移服务显示从源复制到目标的表数。 你必须在迁移后手动检查目标服务器上的数据和 PostgreSQL 对象。

  • 迁移服务仅迁移用户数据库。 该服务不会迁移 template_0 和 template_1 等系统数据库。

  • 以下限制适用于 扩展 迁移:

    • 迁移服务不支持将 pg_partman 扩展从源迁移到目标。
    • 迁移服务不支持在以下方案中迁移 postgres_fdw 扩展:
      • 当使用迁移服务器参数 azure.migration_skip_role_user = on 来禁用用户/角色迁移时。
      • 当源 PostgreSQL 版本大于 15 时。
      • 当源为 AWS、本地、GCP 或 Azure VM 时(不包括 Azure Database for PostgreSQL - 单一服务器)。

    备注

    迁移具有 TIMESCALEDB 扩展的数据库的功能已正式发布。 请注意,对于时序数据库,只能进行 脱机 迁移。

  • 无法移动 Azure Database for PostgreSQL 灵活服务器不支持的扩展。 支持的扩展列在 Azure Database for PostgreSQL 的扩展中。

  • 用户定义的排序规无法迁移到 Azure Database for PostgreSQL 灵活服务器。

  • 无法迁移到早期版本。 例如,无法从 Azure Database for PostgreSQL 版本 15 迁移到 Azure Database for PostgreSQL 版本 14。

  • 迁移服务仅适用于 SSLMODEpreferredrequired 值。

  • 迁移服务不支持超级用户权限和对象。

  • 由于超级用户权限的限制,Azure Database for PostgreSQL 灵活服务器不支持创建自定义表空间。 迁移期间,源 PostgreSQL 实例中的自定义表空间中的数据将迁移到 Azure Database for PostgreSQL 灵活服务器的目标实例的默认表空间。

  • 无法将以下 PostgreSQL 对象迁移到灵活服务器目标:

    • 创建强制转换
    • 创建全文搜索 (FTS) 分析器和 FTS 模板
    • 具有超级用户角色的用户
    • 创建类型
  • 迁移服务不支持在对象级别进行迁移。 也就是说,无法迁移表或架构。

    重要

    尽管可突发 SKU 不是限制因素,但建议为灵活服务器选择更高的 SKU 来加快执行迁移。 Azure Database for PostgreSQL 灵活服务器支持近乎零的停机时间计算和 IOPS 缩放,因此 SKU 可以在最短的停机时间内进行更新。 始终可以更改 SKU 来满足迁移后的应用程序需求。

从 Azure Database for PostgreSQL - 单一服务器迁移的限制

以下列表描述了从 Azure Database for PostgreSQL - 单一服务器迁移所特有的限制:

  • 如果目标灵活服务器使用 SCRAM-SHA-256 密码加密方法,则使用单一服务器上的用户/角色连接灵活服务器会失败。 在单个服务器上,使用 MD5 算法对密码进行加密。 要缓解此限制,请在灵活服务器上为 password_encryption 服务器参数选择选项 MD5
  • 联机迁移使用 pgcopydb 跟随。 一些逻辑解码限制适用。