适用于: 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。
迁移服务仅适用于
SSLMODE
或preferred
的required
值。迁移服务不支持超级用户权限和对象。
由于超级用户权限的限制,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 - 单一服务器迁移所特有的限制:
- 如果目标灵活服务器使用 SCRAM-SHA-256 密码加密方法,则使用单一服务器上的用户/角色连接灵活服务器会失败。 在单个服务器上,使用 MD5 算法对密码进行加密。 要缓解此限制,请在灵活服务器上为
password_encryption
服务器参数选择选项MD5
。 - 联机迁移使用 pgcopydb 跟随。 一些逻辑解码限制适用。